# Register banking accounts with transaction banking Onboard accounts that already exist in Banking into Transaction Banking. Once onboarded, these accounts are enabled to use transaction banking APIs and features. # 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": "Register banking account", "description": "Register existing banking accounts for transaction banking" } ], "components": { "schemas": { "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" }, "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 }, "RegisterAccountv2": { "type": "object", "description": "Registers and onboards existing banking accounts to transaction banking.", "properties": { "account_id": { "$ref": "#/components/schemas/RegisterAccountIdv2" }, "division_code": { "$ref": "#/components/schemas/DivisionCode" } }, "required": [ "account_id" ] }, "RegisterAccountIdv2": { "type": "integer", "format": "int64", "minimum": 1, "maximum": 18446744073709552000, "description": "Registered account ID. This ID is client-generated.", "example": 325636216 }, "RegisterAccountResponsev2": { "type": "object", "description": "Response payload of Register account", "properties": { "account_id": { "$ref": "#/components/schemas/RegisterAccountIdv2" }, "program_id": { "$ref": "#/components/schemas/ProgramID3" }, "status": { "$ref": "#/components/schemas/RegisterAccountStatusv2" }, "division_code": { "$ref": "#/components/schemas/DivisionCode" } }, "required": [ "account_id", "program_id", "status" ] }, "RegisterAccountStatusv2": { "type": "string", "description": "Transaction banking account registration status. `COMPLETED` is returned only when the registration succeeds.", "example": "COMPLETED" } }, "responses": { "500InternalServer": { "description": "Internal Server Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" }, "examples": { "Generic internal error": { "value": { "code": "ECMN9999", "message": "Internal error" } } } } } }, "503HttpClientError": { "description": "Service unavailable" } }, "securitySchemes": { "BearerAuth": { "type": "http", "scheme": "bearer", "bearerFormat": "JWT" } } }, "paths": { "/corporate/v2/corporate-accounts/register": { "post": { "summary": "Register banking accounts with transaction banking", "description": "Onboard accounts that already exist in Banking into Transaction Banking. Once onboarded, these accounts are enabled to use transaction banking APIs and features.\n", "operationId": "post-corporate-v2-register-account", "tags": [ "Register banking account" ], "requestBody": { "description": "Onboard existing banking accounts into transaction banking.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RegisterAccountv2" }, "examples": { "Register account": { "value": { "account_id": 325636216, "division_code": "my-division-code-1773411878103" } } } } } }, "responses": { "201": { "description": "Created", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RegisterAccountResponsev2" }, "examples": { "Account registered successfully": { "value": { "account_id": 325636216, "division_code": "my-division-code-1773411878103", "program_id": 1240, "status": "COMPLETED" } } } } } }, "400": { "description": "A Bad Request validation error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" }, "examples": { "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 in accounts-core": { "value": { "code": "WCAC0041", "message": "Account not found in accounts-core" } }, "Division not found": { "value": { "code": "WCDV0002", "message": "Division not found" } } } } } }, "409": { "description": "Conflict", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" }, "examples": { "Duplicated external_account_id": { "value": { "code": "WCAC0011", "message": "Duplicate external_account_id" } } } } } }, "422": { "description": "Unprocessable Entity", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" }, "examples": { "Account has not completed the creation process": { "value": { "code": "WCAC0042", "message": "Account has not completed the creation process" } }, "Program type CREDITO cannot be registered": { "value": { "code": "WCAC0043", "message": "Program type CREDITO cannot be registered" } } } } } }, "500": { "$ref": "#/components/responses/500InternalServer" }, "503": { "$ref": "#/components/responses/503HttpClientError" } } } } } } ```