# Register account Registers an existing Core account in the Corporate API.
This endpoint onboards accounts created directly in banking so they can be tracked in the transaction banking system. The account is associated with a program and optionally with a division. # OpenAPI definition ```json { "openapi": "3.0.0", "info": { "title": "Banking - Transaction banking", "version": "0.9.0", "description": "Transaction banking API", "contact": { "name": "API Support", "url": "https://developers.pismo.io/support/" }, "license": { "name": "Copyright Pismo" } }, "servers": [ { "url": "https://sandbox.pismolabs.io", "description": "Sandbox API server for testing" } ], "security": [ { "BearerAuth": [] } ], "tags": [ { "name": "Accounts", "description": "Accounts endpoints" } ], "components": { "schemas": { "AccountID": { "type": "integer", "format": "int64", "description": "Account ID", "example": 1234 }, "AccountStatus": { "type": "string", "minLength": 1, "maxLength": 9, "description": "Account status
\n`minLength: 1`\n`maxLength: 9`\n", "example": "DORMANT" }, "RegisterAccountRequest": { "type": "object", "description": "Register account request", "properties": { "account_id": { "type": "integer", "format": "int64", "description": "Account ID from Core Banking.
\n`minimum: 1`\n", "example": 123456789 }, "division_code": { "$ref": "#/components/schemas/DivisionCode" } }, "required": [ "account_id" ] }, "RegisterAccountResponse": { "type": "object", "description": "Register account response body", "properties": { "account_id": { "$ref": "#/components/schemas/AccountID" }, "program_id": { "$ref": "#/components/schemas/ProgramID3" }, "division_code": { "$ref": "#/components/schemas/DivisionCode" }, "division_id": { "$ref": "#/components/schemas/DivisionID" }, "status": { "$ref": "#/components/schemas/AccountStatus" } }, "required": [ "account_id", "program_id", "status" ] }, "DivisionCode": { "type": "string", "maxLength": 36, "description": "Code used to identify your division within the organization. Division code should only contain letters, numbers, and hyphens.", "example": "US" }, "DivisionID": { "type": "string", "description": "Pismo generates the division ID when you use the [Create division](https://developers.pismo.io/pismo-docs/reference/post-division-v2) endpoint.", "format": "uuid", "example": "6f8a456a-8b1a-4022-a2f8-7612595330b5" }, "ErrorCode": { "description": "Error code\n`minLength: 1`\n`maxLength: 12`\n", "type": "string", "minLength": 1, "maxLength": 12, "example": "WPMT0017" }, "ErrorMessage": { "description": "Error message\n`minLength: 1`\n`maxLength: 1000`\n", "type": "string", "minLength": 1, "maxLength": 1000, "example": "Invalid JSON payload received: Error unmarshalling request" }, "ErrorResponse": { "type": "object", "properties": { "code": { "$ref": "#/components/schemas/ErrorCode" }, "message": { "$ref": "#/components/schemas/ErrorMessage" } } }, "ProgramID3": { "type": "integer", "format": "int64", "description": "Program ID. This is a client-provided ID.", "example": 2222 } }, "responses": { "500InternalServer": { "description": "Internal Server Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" }, "examples": { "Generic internal error": { "value": { "code": "ECMN9999", "message": "Internal error" } } } } } } }, "securitySchemes": { "BearerAuth": { "type": "http", "scheme": "bearer", "bearerFormat": "JWT" } } }, "paths": { "/corporate/v1/accounts/register": { "post": { "summary": "Register account", "description": "Registers an existing Core account in the Corporate API.
\nThis endpoint onboards accounts created directly in banking so they can be tracked in the transaction banking system.\n\nThe account is associated with a program and optionally with a division.\n", "operationId": "post-accounts-register", "tags": [ "Accounts" ], "requestBody": { "description": "Register account request body", "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RegisterAccountRequest" }, "examples": { "Register account with division": { "value": { "account_id": 123456789, "division_code": "DIV001" } }, "Register account without division": { "value": { "account_id": 123456789 } } } } } }, "responses": { "201": { "description": "Account registered successfully", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RegisterAccountResponse" }, "examples": { "Successful account registration with division": { "value": { "account_id": 123456789, "program_id": 12345, "division_code": "DIV001", "division_id": "550e8400-e29b-41d4-a716-446655440000", "status": "NORMAL" } }, "Successful account registration without division": { "value": { "account_id": 123456789, "program_id": 12345, "status": "NORMAL" } } } } } }, "400": { "description": "A Bad Request validation error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" }, "examples": { "Invalid JSON payload": { "value": { "code": "WRAC0001", "message": "Invalid JSON payload received: Error unmarshalling request" } }, "account_id required": { "value": { "code": "WRAC0002", "message": "account_id is a required field" } }, "division_code max length": { "value": { "code": "WRAC0002", "message": "division_code must be a maximum of 36 characters in length" } }, "Program not bound to division": { "value": { "code": "WCAC0006", "message": "Program not bound to division" } } } } } }, "404": { "description": "Not Found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" }, "examples": { "Account not found": { "value": { "code": "WRAC0003", "message": "Account not found in Core Banking" } }, "Division not found": { "value": { "code": "WRAC0004", "message": "Division not found" } } } } } }, "409": { "description": "Conflict", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" }, "examples": { "Account already registered": { "value": { "code": "WRAC0005", "message": "Account already registered" } } } } } }, "500": { "$ref": "#/components/responses/500InternalServer" } } } } } } ```