openapi: 3.0.3
info:
title: Receivable Services
description: >-
CitiConnect API service allows you to do the virtual account (VA) creation
functionality directly from your client ERP system. You can access the VA
APIs create and manage functions such as update, delete, and inquiry for
virtual accounts. You can create VAs using the reservation and activation
endpoints.
contact:
name: Standards & Developer Hub
url: https://tts.sandbox.developer.citi.com/citiconnect/
email: developer-support@citi.com
version: 1.0.0
servers:
- url: https://tts.sandbox.apib2b.citi.com/citiconnect/sb
description: 'sandbox URL '
- url: https://tts.apib2b.citi.com/citiconnect/prod
description: production gateway URL
tags:
- name: Virtual Account-Wallet
paths:
/receivablesservices/v2/virtualaccounts:
post:
tags:
- Virtual Account-Wallet
summary: Reserve Virtual Accounts
description: >-
The virtual account creation is a 2-step process (using the reservation
and activation services), you can use POST and PUT endpoints one after
another.
Contact your citi representative for the number of
accounts you can request for reservation per API.
Use
POST verb for Reservation action
- The API support
XML and JSON formats.
- The reservation/activation functionality is
identified based on the request payload (`action`).
- You specify
values for input parameters in the body of your XML/JSON document.
- You encrypt the payload, place it in your request and send it with
your application.
Content-Type: Supports
application/xml and application/json.
Authorization: The
OAuth Token prefixed with bearer and a space in between.
Allowed characters: A-Z, a-z, 0-9, Space
Allowed
punctuation marks: ' ( ) * - , . / : ; _ & { } $ # @ [ ]
operationId: virtualAccountReservation
parameters:
- $ref: '#/components/parameters/Client-Id'
- $ref: '#/components/parameters/Idempotency-Id'
requestBody:
description: Describes the virtual account creation APIs request body parameters.
content:
application/json:
schema:
$ref: '#/components/schemas/Virtual-Account-Reservation-Request'
examples:
VAReservationExample:
$ref: '#/components/examples/Reservation-Example'
application/xml:
schema:
$ref: '#/components/schemas/Virtual-Account-Reservation-Request'
examples:
VAReservationExample:
value: >-
RESERVATION001122445593050C
responses:
'202':
$ref: '#/components/responses/Accepted-Response'
'400':
$ref: '#/components/responses/Bad-Request'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/Not-Found'
'405':
$ref: '#/components/responses/Method-Not-Allowed'
'409':
$ref: '#/components/responses/Idempotency-Duplication'
'415':
$ref: '#/components/responses/Unsupported-Media-Type'
'429':
$ref: '#/components/responses/Too-Many-Request'
'500':
$ref: '#/components/responses/Internal-Server-Error'
security:
- clientCredentials: []
callbacks:
virtual-account-reservation:
$ref: '#/components/callbacks/Reservation-Response'
put:
tags:
- Virtual Account-Wallet
summary: Activate Virtual Accounts
description: >-
The virtual account creation is a 2-step process (using the reservation
and activation services), you can use POST and PUT endpoints one after
another.
Use PUT verb for Activation action
- The API support XML and JSON formats.
- The
reservation/activation functionality is identified based on the request
payload (action).
- You specify values for input parameters in the
body of your XML/JSON document.
- You encrypt the payload, place it
in your request and send it with your application.
Content-Type: Supports application/xml and
application/json.
Authorization: The OAuth Token prefixed
with Bearer and space in between.
Allowed characters:
A-Z, a-z, 0-9, Space
Allowed punctuation marks: ' ( ) * - , .
/ : ; _ & { } $ # @ [ ]
operationId: virtualAccountActivation
parameters:
- $ref: '#/components/parameters/Client-Id'
requestBody:
description: Describes the virtual account creation APIs request body parameters.
content:
application/json:
schema:
$ref: '#/components/schemas/Virtual-Account-Activation-Request'
examples:
VAActivationEntityIdExample:
$ref: '#/components/examples/Activation-Entity-Id-Example'
VAActivationEntityDetailsExample:
$ref: '#/components/examples/Activation-Entity-Details-Example'
application/xml:
schema:
$ref: '#/components/schemas/Virtual-Account-Activation-Request'
examples:
VAActivationEntityIdExample:
value: >-
ACTIVATION5121842193010000000202133567CYDMB0TGcLscEhdjsP0YRlCA
VAActivationEntityDetailsExample:
value: >-
ACTIVATION5121842193010000000201340652CYFDGDFGFDGC2024-02-29GHHsdc.coBNVJHGJHwatches/BusinessPurposeabcUSTAX_IDA{{$timestamp}}CN3100
Keele st533L5B
3Y6North
YorkOntarioCNGGHJFHJGCFFHG2024-02-29534
cYTross
st533785263caraladoUSUS
callbacks:
virtual-account-activation:
$ref: '#/components/callbacks/Activation-Response'
responses:
'202':
$ref: '#/components/responses/Accepted-Response'
'400':
$ref: '#/components/responses/Bad-Request'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/Not-Found'
'405':
$ref: '#/components/responses/Method-Not-Allowed'
'415':
$ref: '#/components/responses/Unsupported-Media-Type'
'429':
$ref: '#/components/responses/Too-Many-Request'
'500':
$ref: '#/components/responses/Internal-Server-Error'
security:
- clientCredentials: []
patch:
tags:
- Virtual Account-Wallet
summary: Update Virtual Accounts
description: >-
The virtual account update (using the update service endpoint) allows
you to modify virtual account information.
Use the
PATCH verb for Update action
- The API support XML
and JSON formats.
- The update functionality is identified based on
the request payload (action).
- You specify values for input
parameters in the body of your XML/JSON document.
- You encrypt the
payload, place it in your request, and send it with your application.
The virtual account update endpoint allows you to modify the
virtual account details and status.
Below are the sub-object
combinations allowed under the virtual_account object for updates:
- VALID combination 1: For `virtual_account.entity.type = C`
(Company), update the entity details under a virtual_account using the
`virtual_account.entity` as well as
`virtual_account.beneficial_owner`
- VALID combination 2: For
`virtual_account.entity.type = S` (Sole Trader), update the entity
details under a virtual_account using the `virtual_account.entity`
- VALID combination 3: For `virtual_account.entity.type = I`
(Individual), update the entity details under a virtual_account using
the `virtual_account.entity`
- VALID combination 4: Apply the
posting restrictions on virtual_account use only the
`virtual_account.credit_debit_preferences` object
Below are the
INVALID object combinations for the PATCH endpoint:
- INVALID
combination 1: Only with `virtual_account.entity` for
`virtual_account.entity.type = C` (Company)
- INVALID
combination 2: Only with `virtual_account.beneficial_owner`
-
INVALID combination 3: With all 3 objects, `virtual_account.entity`,
`beneficial_owner`, `credit_debit_preferences`
- INVALID
combination 4: With 2 objects, `virtual_account.entity`,
`credit_debit_preferences`
- INVALID combination 5: With 2
objects, `virtual_account.beneficial_owner`,
`credit_debit_preferences`
Content-Type:
Supports application/xml and application/json.
Authorization: The OAuth Token prefixed with Bearer and space in
between.
Allowed characters: A-Z, a-z, 0-9, Space
Allowed punctuation marks: ' ( ) * - , . / : ; _ & { } $ # @
[ ]
operationId: virtualAccountUpdate
parameters:
- $ref: '#/components/parameters/Client-Id'
requestBody:
description: >-
Describes the virtual account creation endpoint request body
parameters.
content:
application/json:
schema:
$ref: '#/components/schemas/Virtual-Account-Update-Request'
examples:
VAUpdateEntityDetailsExample:
$ref: '#/components/examples/Update-Entity-Details-Example'
VAPostingRestrictionExample:
$ref: '#/components/examples/Update-Posting-Restriction-Example'
application/xml:
schema:
$ref: '#/components/schemas/Virtual-Account-Update-Request'
examples:
VAUpdateEntityDetailsExample:
value: >-
UPDATE512184219309305441932INCFGlajbO0_vpOdtwXU3OiC2002-11-12www.dd.comddddddUSTAX_IDUSA1737720860125
Oain
st155/35614526369cubaNC32USGGHJFHJGCFFHG2002-11-12534
cYTross
st22785263caraladoUSUS
VAPostingRestrictionExample:
value: >-
UPDATE5121842193010000000202133567YN
callbacks:
virtual-account-activation:
$ref: '#/components/callbacks/Update-Response'
responses:
'202':
$ref: '#/components/responses/Accepted-Response'
'400':
$ref: '#/components/responses/Bad-Request'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/Not-Found'
'405':
$ref: '#/components/responses/Method-Not-Allowed'
'409':
$ref: '#/components/responses/Idempotency-Duplication'
'415':
$ref: '#/components/responses/Unsupported-Media-Type'
'429':
$ref: '#/components/responses/Too-Many-Request'
'500':
$ref: '#/components/responses/Internal-Server-Error'
security:
- clientCredentials: []
get:
tags:
- Virtual Account-Wallet
summary: Check Virtual Account Status and Details
description: >-
The virtual account inquiry endpoint can be used primarily for virtual
account status check as well as information purposes.
-
Scenario 1: `request_id` (applicable only for reservation API (verb:
POST) `request_ids`))
- Scenario 2: `virtual_account`
- Scenario 3: `virtual_account`, `branch_code`
- Scenario
4: `request_id` and `virtual_account` (preference will be given to
`virtual_account` and the `request_id` will be ignored)
operationId: virtualAccountInquiry
parameters:
- $ref: '#/components/parameters/Client-Id'
- $ref: '#/components/parameters/Branch-Code'
- $ref: '#/components/parameters/Reservation-Request-Id'
- $ref: '#/components/parameters/Encrypted-Params'
responses:
'200':
$ref: '#/components/responses/Inquiry-Response'
'400':
$ref: '#/components/responses/Bad-Request-Sync-Response'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/Not-Found'
'405':
$ref: '#/components/responses/Method-Not-Allowed'
'429':
$ref: '#/components/responses/Too-Many-Request'
'500':
$ref: '#/components/responses/Internal-Server-Error'
security:
- clientCredentials: []
delete:
tags:
- Virtual Account-Wallet
summary: Deactivate Virtual Accounts
description: >-
Deactivation can be performed only if an account holds no balances.
Deactivation is an irreversible action
Please perform the necessary
verification before deactivating any virtual accounts.
operationId: virtualAccountDeactivation
parameters:
- $ref: '#/components/parameters/Client-Id'
- $ref: '#/components/parameters/Branch-Code'
- $ref: '#/components/parameters/Encrypted-Params'
responses:
'202':
$ref: '#/components/responses/De-Activation-Accepted-Response'
'400':
$ref: '#/components/responses/De-Activation-Bad-Request-Response'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/Not-Found'
'405':
$ref: '#/components/responses/Method-Not-Allowed'
'429':
$ref: '#/components/responses/Too-Many-Request'
'500':
$ref: '#/components/responses/Internal-Server-Error'
callbacks:
virtual-account-activation:
$ref: '#/components/callbacks/De-Activation-Response'
components:
parameters:
Client-Id:
name: client_id
in: query
description: >-
Unique reference shared during CitiConnect API onboarding (`client_id`
used during OAuth token generation).
required: true
schema:
type: string
maxLength: 128
example: f56f0f6b-74fe-4dfa-b4ab-0da35a46b65e
Idempotency-Id:
name: Idempotency-Id
in: header
description: >-
Your unique identification for a POST request
- Maximum length is
128.
- CitiConnect API responds with an error (HTTP status 4XX) if
your POST request idempotency identification value is a duplicate across
a recent history of idempotency identifications in Citi's database
-
If you don't receive any response (HTTP status 2XX, 4XX or 5XX) from
Citi to your POST request and you wish to retry, re-initiate your
request with the same idempotency identification to prevent an
accidental duplicate payment.
required: true
schema:
type: string
maxLength: 128
example: a44cbb606de4edb9a7a123414bba3bb
Apim-Guid:
name: Apim-Guid
in: header
required: true
description: >-
Unique system-generated reference number, refer this number in case of
any discrepancy reporting to a Citi representative.
schema:
type: string
maxLength: 52
minLength: 1
example: na-apimgwgtds04~4a98cbc5-d813-4e65-bc81-d70f0f87f6ec
Event-Type:
name: Event-Type
in: header
required: true
description: Describes the PUSH Notification (callback) event type.
schema:
type: string
maxLength: 20
minLength: 1
example: VAMAPI
Event-Name:
name: Event-Name
in: header
required: true
description: Describes the PUSH Notification (callback) event name.
schema:
type: string
maxLength: 20
minLength: 1
example: Status Update
Pagination-Metadata:
name: Pagination-Metadata
in: header
required: true
description: >-
current_page: current page number
total_page: total number of pages
available for your request
page_size: total number of records
available in the current page
has_more: anymore message or records
expected
schema:
type: string
example: '{"current_page":2, "total_pages":10, "page_size":100,"has_more":true}'
Branch-Code:
name: branch_code
in: query
required: false
description: Citi's bank code associated with given a header account number.
schema:
type: string
minLength: 3
maxLength: 4
example: '960'
Reservation-Request-Id:
name: request_id
in: query
required: false
description: >-
request_id received as part of 'Reservation API' response.
Inquiry using the `request_id` parameter can be done only if the virtual
account is not ACTIVATED yet.
Inquiry can be made up to 90 days
from the date from which the `request_id` was created.
schema:
type: string
minLength: 1
maxLength: 40
example: 0ae52a57-01ff-43a0-a8cc-6112dfcb4c64
Encrypted-Params:
name: Encrypted-Params
in: header
schema:
type: string
description: >-
Encrypt the key values as below:
- Virtual account
Use
your digital cert to do the encryption.
virtual_account:
In the GET operation: Virtual account that
was reserved as well as activated are allowed
In DELETE operation:
Virtual account that was activated is only allowed
example: '{"virtual_account":"1234567890"}'
schemas:
Virtual-Account-Reservation-Request:
title: VirtualAccountReservationRequest
xml:
name: VirtualAccountReservationRequest
required:
- action
properties:
action:
title: action
xml:
name: Action
type: string
description: >-
Action is a request type.
- Choose the action value as
''RESERVATION'', if you want to reserve virtual accounts for the
previous virtual header account.
enum:
- RESERVATION
example: RESERVATION
header_account:
$ref: '#/components/schemas/Header-Account'
number_of_accounts_required:
title: number_of_accounts_required
xml:
name: NumAcctReq
type: integer
minimum: 1
maximum: 50000
description: >-
Required parameter only if the value of the `action` parameter is
'RESERVATION'.
This parameter specifies the number of
virtual accounts requested to be reserved. Minimum account that can
be requested/supported under one API call is 1. Contact your Citi
representative for the number of accounts you are allowed to request
per API call.
example: 10
purpose:
$ref: '#/components/schemas/Purpose-Ref'
Virtual-Account-Activation-Request:
title: VirtualAccountActivationRequest
xml:
name: VirtualAccountActivationRequest
required:
- action
properties:
action:
title: action
xml:
name: Action
type: string
description: >-
Action is a request type.
- Choose the action value as
''ACTIVATION'', if you want to activate the virtual account which
was reserved earlier.
enum:
- ACTIVATION
example: ACTIVATION
header_account:
$ref: '#/components/schemas/Header-Account'
virtual_account:
$ref: '#/components/schemas/Virtual-Account'
Virtual-Account-Update-Request:
title: VirtualAccountRequest
xml:
name: VirtualAccountUpdateRequest
required:
- action
properties:
action:
title: action
xml:
name: Action
type: string
description: >-
Action is a request type.
- Choose the action value as
'UPDATE', if you want to update the virtual account details that
were stored earlier.
enum:
- UPDATE
example: UPDATE
header_account:
$ref: '#/components/schemas/Header-Account'
virtual_account:
$ref: '#/components/schemas/Virtual-Account-Update'
Header-Account:
title: HeaderAccount
xml:
name: HeaderAccount
type: object
properties:
account:
title: account
xml:
name: Account
type: string
minLength: 1
maxLength: 40
description: >-
Required parameter if the value of the `action` parameter is
'RESERVATION' (or) 'ACTIVATION' (or) 'UPDATE'. Specifies the header
account number assigned during the account opening.
example: '0123456789'
branch_code:
title: branch_code
xml:
name: BranchCode
type: string
minLength: 3
maxLength: 4
description: Citi's bank code associated with given a header account number.
example: '820'
Virtual-Account:
title: VirtualAccount
xml:
name: VirtualAccount
type: object
properties:
account:
title: account
xml:
name: Account
type: string
minLength: 1
maxLength: 40
description: >-
Required parameter only if the value of the `action` parameter is
'ACTIVATION'.
This parameter specifies the virtual account to
be activated.
example: '0123456789'
purpose:
$ref: '#/components/schemas/Purpose-Ref'
balance_display_option:
title: balance_display_option
xml:
name: BalanceDisplayOption
type: string
enum:
- 'Y'
- 'N'
description: >-
This parameter is only applicable if the value of the `action`
parameter is set to 'ACTIVATION'.
This parameter specifies
whether to display opening or closing balances or not. Default value
is 'Y'.
Description of possible parameter values:
Y -
Show virtual account opening and closing balances.
N -
Show ZERO opening and closing balance for virtual account in
statements and reports.
example: 'Y'
entity:
$ref: '#/components/schemas/Entity'
beneficial_owner:
title: BeneficialOwner
description: >-
This parameter is only applicable if the value of the `action`
parameter is set to 'ACTIVATION' and the relevant purpose parameter
is ENUMS.
Required parameter if the `entity.id` parameter
is not used.
- Not applicable for sole trader
(`entity.type`='S') and individual (`entity.type`='I').
-
For company (`entity.type`='C'), where `entity.address.country` =
'CN', `beneficial_owner` fields are optional.
xml:
name: BeneficialOwner
wrapped: true
type: array
minItems: 1
maxItems: 4
items:
$ref: '#/components/schemas/Beneficial-Owner'
Virtual-Account-Update:
title: VirtualAccount
xml:
name: VirtualAccount
type: object
properties:
account:
title: account
xml:
name: Account
type: string
minLength: 1
maxLength: 40
description: >-
Required parameter if the value of the `action` parameter is
'UPDATE'.
This parameter specifies the virtual account
details to be modified.
example: '0123456789'
entity:
$ref: '#/components/schemas/Entity-Update'
beneficial_owner:
title: BeneficialOwner
description: >-
Note: Provides the complete beneficial owner's list which
is updated into the system. This action replaces the existing
beneficial owner's details
Required object if the
`entity` object is used.
- Not applicable for sole trader
(`entity.type`='S') and individual (`entity.type`='I')
xml:
name: BeneficialOwner
wrapped: true
type: array
minItems: 1
maxItems: 4
items:
$ref: '#/components/schemas/Beneficial-Owner-Update'
credit_debit_preferences:
$ref: '#/components/schemas/Credit-Debit-Preferences-Update-Request'
Header-Account-Sync-Response:
title: HeaderAccountResponse
xml:
name: HeaderAccount
type: object
required:
- account
- branch_code
properties:
account:
title: account
xml:
name: Account
type: string
minLength: 1
maxLength: 40
description: >-
Specifies the header account number under which the virtual accounts
are reserved/activated.
example: '0123456789'
branch_code:
title: branch_code
xml:
name: BranchCode
type: string
minLength: 3
maxLength: 4
description: Citi's bank code associated with given a header account number.
example: '820'
Virtual-Account-Sync-Response:
title: VirtualAccountResponse
xml:
name: VirtualAccount
type: object
required:
- account
- status
properties:
account:
title: account
xml:
name: Account
type: string
minLength: 1
maxLength: 40
description: >-
This parameter specifies the virtual account for which the inquiry
results are shown.
example: '0123456789'
status:
title: status
xml:
name: Status
type: string
description: >-
Status of the virtual account presented in the inquiry.
Possible status:
- `RESERVED`
- `ACTIVE`
-
`CLOSED`
example: ACTIVE
balance_display_option:
title: balance_display_option
xml:
name: BalanceDisplayOption
type: string
enum:
- 'Y'
- 'N'
description: >-
This parameter specifies whether 'opening' or 'closing' balances are
displayed.
Default value is 'Y'.
Description of possible
parameter values:
Y - Show virtual account opening and closing
balances.
N - Show ZERO opening and closing balance for
virtual account in statements and reports.
example: 'Y'
entity:
$ref: '#/components/schemas/Entity-Sync-Response'
credit_debit_preferences:
$ref: '#/components/schemas/Credit-Debit-Preferences-Response'
beneficial_owner:
title: BeneficialOwner
description: >-
Parameters are applicable only if the value of the `action`
parameter is set to 'ACTIVATION' and the relevant purpose parameter
is ENUMS.
xml:
name: BeneficialOwner
wrapped: true
type: array
minItems: 1
maxItems: 4
items:
$ref: '#/components/schemas/Beneficial-Owner-Sync-Response'
Entity-Sync-Response:
title: Entity
description: Parameters are shown only if the virtual account is activated.
xml:
name: Entity
allOf:
- type: object
title: Entity
properties:
id:
title: id
xml:
name: Id
type: string
minLength: 20
maxLength: 20
description: >-
The entity ID that was assigned specifically to the entity that
was activated under this virtual account.
example: EN_45678901234567890
last_name:
title: last_name
xml:
name: LastName
type: string
maxLength: 210
description: >-
Entity Name (concatenated form of 'first_name' and 'last_name')
pertaining to the entity that was activated under this virtual
account.
example: LastName
date_of_birth:
title: date_of_birth
xml:
name: DateOfBirth
type: string
minLength: 10
maxLength: 10
pattern: >-
^(?:[1-9]\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)$
description: >-
Date of birth or incorporation date pertaining to the entity
that was activated under this virtual account. This parameter is
represented in a fixed 10-digit format (YYYY-MM-DD) as per ISO
standards.
example: '1995-04-01'
org_prvt_identification:
$ref: >-
#/components/schemas/Organisation-Private-Identification-Sync-Response
address:
$ref: '#/components/schemas/Address-Sync-Response'
Credit-Debit-Preferences-Update-Request:
title: Credit-Debit-Preferences-Request
xml:
name: CreditDebitPreferences
description: >-
Option to revoke the debit or credit privileges into the virtual
account.
type: object
properties:
disallow_credit:
type: string
description: Preference chosen to disallow credit on a virtual account.
title: disallow_credit
xml:
name: DisallowCredit
enum:
- 'Y'
- 'N'
example: 'Y'
disallow_debit:
type: string
description: Preference chosen to disallow debit on a virtual account.
title: disallow_debit
xml:
name: DisallowDebit
enum:
- 'Y'
- 'N'
example: 'N'
Credit-Debit-Preferences-Response:
title: Credit-Debit-Preferences-Response
xml:
name: CreditDebitPreferences
description: >-
Option to revoke the debit or credit privileges into the virtual
account.
type: object
properties:
disallow_credit:
type: string
description: Preference chosen to disallow a credit on virtual accounts.
title: disallow_credit
xml:
name: DisallowCredit
enum:
- 'Y'
- 'N'
example: 'Y'
disallow_debit:
type: string
description: Preference chosen to disallow a debit on virtual account.
title: disallow_debit
xml:
name: DisallowDebit
enum:
- 'Y'
- 'N'
example: 'N'
Entity:
title: Entity
description: >-
Required parameter only if the value of `action` is set to
'ACTIVATION'.
xml:
name: Entity
allOf:
- $ref: '#/components/schemas/Entity-Contact-Name'
- type: object
- required:
- country_of_operation
properties:
id:
title: id
xml:
name: Id
type: string
minLength: 20
maxLength: 20
description: >-
For activation, either the `entity.id` (or) rest of the entity
details under the entity object are required.
example: EN_45678901234567890
type:
title: type
xml:
name: Type
type: string
enum:
- C
- S
- I
description: >-
Required parameter under the `entity` object if the `id`
parameter is not used.
Populate the entity type applicable
for the entity being activated under this virtual account.
C = COMPANY
S = SOLE TRADER - enterprise
owned and run by one person and in which there is no legal
distinction between the owner and the business entity
I
= INDIVIDUAL - natural person who is the sole owner of the
enterprise and is personally liable for all the debts of the
enterprise.
example: C
date_of_birth:
title: date_of_birth
xml:
name: DateOfBirth
type: string
minLength: 10
maxLength: 10
pattern: >-
^(?:[1-9]\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)$
description: >-
Populates the date of birth or incorporation date pertaining to
the entity that is being activated under this virtual account.
It is in fixed 10-digit format (YYYY-MM-DD) as per ISO standard.
- Required parameter when sole trader (`entity.type`='S')
or individual (`entity.type`='I') is present
- Optional for
company (`entity. Type`='C').
- For sole trader (`entity.type`='S') and individual
(`entity.type`='I'), merchant age should be 18 years or above at
the time of activation.
- Year (YYYY) and Month (MM) values in `date_of_birth` cannot be
zero.
- For company (`entity.type`='C'), the incorporation date cannot
be a future date.
example: '1995-04-01'
website:
title: website
xml:
name: Website
type: string
maxLength: 200
description: >-
Enter the website of entity being activated under this virtual
account.
example: http://www.dd.com
store_name:
title: store_name
xml:
name: StoreName
type: string
maxLength: 105
description: >-
Enter the store name of the entity being activated under this
virtual account. Optional field, should not be considered as the
entity name.
example: ABC
business_purpose:
title: business_purpose
xml:
name: BusinessPurpose
type: string
maxLength: 105
description: >-
Populate the business purpose applicable for the entity being
activated under this virtual account.
example: Trade
acronym:
title: acronym
xml:
name: Acronym
type: string
maxLength: 105
description: >-
Populate the acronym for the entity being activated under this
virtual account.
example: Buss
country_of_operation:
title: country_of_operation
xml:
name: CtryOfOpr
type: string
minLength: 2
maxLength: 2
pattern: ^[A-Z]{2}$
description: >-
Enter the 'Country code' under which the entity is operated.
Required parameter for both `entity.id` (or)
entity details combination.
example: CA
org_prvt_identification:
$ref: '#/components/schemas/Organisation-Private-Identification'
address:
$ref: '#/components/schemas/Address'
Entity-Update:
title: Entity
description: >-
Required parameter only if the value of 'action' parameter is set to
'ACTIVATION'.
xml:
name: Entity
allOf:
- $ref: '#/components/schemas/Entity-Contact-Name'
- type: object
- required:
- country_of_operation
properties:
id:
title: id
xml:
name: Id
type: string
minLength: 20
maxLength: 20
description: >-
For update `entity id` is mandatory and populate the ID that was
associated with this virtual account.
example: EN_45678901234567890
website:
title: website
xml:
name: Website
type: string
maxLength: 200
description: >-
Enter the website of the entity being activated under this
virtual account.
example: http://www.dd.com
store_name:
title: store_name
xml:
name: StoreName
type: string
maxLength: 105
description: >-
Enter the store name of the entity being activated under this
virtual account. Optional parameter, should not be considered as
the entity name.
example: ABC
business_purpose:
title: business_purpose
xml:
name: BusinessPurpose
type: string
maxLength: 105
description: >-
Enter the business purpose applicable for the entity being
activated under this virtual account.
example: Trade
acronym:
title: acronym
xml:
name: Acronym
type: string
maxLength: 105
description: >-
Enter the acronym for the entity being activated under this
virtual account.
example: Buss
type:
title: type
xml:
name: Type
type: string
enum:
- C
- S
- I
description: >-
Enter the acronym for the entity being activated under this
virtual account.
C = COMPANY
S = SOLE TRADER
- enterprise owned and run by one person and in which there is
no legal distinction between the owner and the business entity.
I = INDIVIDUAL - natural person who is the sole owner
of the enterprise and is personally liable for all the debts of
the enterprise.
example: C
date_of_birth:
title: date_of_birth
xml:
name: DateOfBirth
type: string
minLength: 10
maxLength: 10
pattern: >-
^(?:[1-9]\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)$
description: >-
Populates the date of birth or incorporation date pertaining to
the entity that is being activated under this virtual account.
It is in fixed 10-digit format (YYYY-MM-DD) as per ISO standard.
- Required parameter when sole trader (`entity.type`='S')
or individual (`entity.type`='I') is present
- Optional for
company (`entity. Type`='C').
example: '1995-04-01'
country_of_operation:
title: country_of_operation
xml:
name: CtryOfOpr
type: string
minLength: 2
maxLength: 2
pattern: ^[A-Z]{2}$
description: >-
Enter the 'Country code' in which the entity is operated.
Required parameter for both `entity.id` (or) the entity
details combination.
example: CA
org_prvt_identification:
$ref: >-
#/components/schemas/Organisation-Private-Identification-Update-Request
address:
$ref: '#/components/schemas/Address'
Entity-Contact-Name:
title: Entity-Contact-Name
xml:
name: EntityContactName
type: object
properties:
first_name:
title: first_name
xml:
name: FirstName
type: string
minLength: 1
maxLength: 105
description: >-
First name of entity linked to a virtual account.
Required
parameter if the `entity` object is used.
- Required parameter
when sole trader (`entity.type`='S') or individual
(`entity.type`='I') is present
- Not applicable for company
(`entity.type`='C').
- For 'US' virtual_account.entity.first_name and
virtual_account.entity.last_name fields combined total length
including spaces cannot exceed 34 characters.
- For sole trader (`entity.type`='S') and individual
(`entity.type`='I'), `entity.first_name` and `entity.last_name`
should not be same.
example: John
last_name:
title: last_name or entity_name
xml:
name: LastName
type: string
minLength: 1
maxLength: 105
description: >-
Last name of the entity linked to a virtual account.
Required
parameter if the `entity` object is used.
- For sole
trader (`entity.type`='S') or individual (`entity.type`='I') -
include the last name
- For company (`entity.type`='C') -
include the legal entity name.
- For 'US' virtual_account.entity.first_name and
virtual_account.entity.last_name fields combined total length
including spaces cannot exceed 34 characters.
- For company (`entity.type`='C'), `entity.last_name` should not be
same as `beneficial_owner.first_name` + `beneficial_owner.last_name`
(spaces between first name and last name removed) for any beneficial
owner.
example: Thomas
Bo-Contact-Name:
title: Bo-Contact-Name
xml:
name: BoContactName
type: object
properties:
first_name:
title: first_name
xml:
name: FirstName
type: string
minLength: 1
maxLength: 105
description: >-
First name of the entity's beneficial owner.
Required parameter
if the `virtual_account.beneficial_owner` object is not used.
example: John
last_name:
title: last_name
xml:
name: LastName
type: string
minLength: 1
maxLength: 105
description: >-
Last name of the entity's beneficial owner.
Required parameter
if the `virtual_account.beneficial_owner` object is not used.
example: Thomas
Organisation-Private-Identification:
title: OrganisationPrivateIdentification
xml:
name: OrganisationPrivateIdentification
type: object
required:
- type
- id
- country_of_issuance
description: Required parameter if the `entity.id` parameter is not used.
properties:
type:
title: type
xml:
name: Type
type: string
enum:
- TAX_ID
description: >-
Type of the identification that is provided in this object. Type
maximum length can be up to 200 characters. - 'TAX_ID' Tax
Identification
example: TAX_ID
id:
title: id
xml:
name: Id
type: string
minLength: 1
maxLength: 255
description: >-
Identification pertaining to the entity which is used for the
virtual account activation.
- If `org_prvt_identification.type` is `TAX_ID`, then
`org_prvt_identification.id` should be 1 to 35 characters and should
not be blank, repeated single digit values (for example,
"1111111111111"), or simple sequential values (for example,
"1234567891011").
- For US, if `org_prvt_identification.type` is `TAX_ID`, then `org_prvt_identification.id` should be in EIN format (XX-XXXXXXX).
example: '1234567890'
country_of_issuance:
title: country_of_issuance
xml:
name: CountryOfIssuance
type: string
minLength: 2
maxLength: 2
pattern: ^[A-Z]{2}$
description: Country code where the provided identification has been issued.
example: US
Organisation-Private-Identification-Update-Request:
title: OrganisationPrivateIdentification
xml:
name: OrganisationPrivateIdentification
type: object
required:
- type
- id
- country_of_issuance
properties:
type:
title: type
xml:
name: Type
type: string
enum:
- TAX_ID
description: >-
Type of the identification that is populated in this object. -
'TAX_ID' Tax Identification
example: TAX_ID
id:
title: id
xml:
name: Id
type: string
minLength: 1
maxLength: 255
description: >-
Identification pertaining to the entity which is used for the
virtual account activation.
example: '1234567890'
country_of_issuance:
title: country_of_issuance
xml:
name: CountryOfIssuance
type: string
minLength: 2
maxLength: 2
pattern: ^[A-Z]{2}$
description: Country code where the provided identification has been issued.
example: US
Organisation-Private-Identification-Sync-Response:
title: OrganisationPrivateIdentificationSyncResponse
xml:
name: OrganisationPrivateIdentification
type: object
properties:
type:
title: type
xml:
name: Type
type: string
minLength: 1
maxLength: 200
enum:
- TAX_ID
description: >-
Type of the identification that is populated in this object. -
'TAX_ID' Tax Identification
example: TAX_ID
id:
title: id
xml:
name: Id
type: string
minLength: 1
maxLength: 255
description: >-
Identification pertaining to the entity which is used for the
virtual account activation.
example: '1234567890'
country_of_issuance:
title: country_of_issuance
xml:
name: CountryOfIssuance
type: string
minLength: 2
maxLength: 2
pattern: ^[A-Z]{2}$
description: Country code where the provided identification has been issued.
example: US
Address:
title: Address
xml:
name: Address
type: object
required:
- street_name
- building_number
- postal_code
- town_name
- country_sub_division
- country
description: >-
Address object is required if the `entity` object is used.
- For 'US' combined total length for entity address including spaces
cannot exceed 100 characters and this restriction is not applicable for
beneficial owner.
properties:
street_name:
title: street_name
xml:
name: StrtNm
type: string
minLength: 1
maxLength: 70
description: >-
Address details of the entity (or) the beneficial owner of the
virtual account. Required parameter in the `Address` object.
example: 3100 Keele st
building_number:
title: building_number
xml:
name: BldgNb
type: string
minLength: 1
maxLength: 16
description: >-
Address details of the entity (or) the beneficial owner of the
virtual account.
- If building number is not present then provide
virtual_account.entity.building_number as N/A.
example: '533'
postal_code:
title: postal_code
xml:
name: PstCd
type: string
minLength: 1
maxLength: 16
description: >-
Address details of the entity (or) the beneficial owner of virtual
account. Required parameter in the `Address` object.
example: L5B 3Y6
town_name:
title: town_name
xml:
name: TwnNm
type: string
minLength: 1
maxLength: 35
description: >-
Address details of the entity (or) the beneficial owner of the
virtual account. Required parameter in the `Address` object.
example: North York
country_sub_division:
title: country_sub_division
xml:
name: CtrySubDvsn
type: string
minLength: 1
maxLength: 35
description: >-
Address details of the entity (or) the beneficial owner of the
virtual account. Required parameter in the `Address` object.
example: Ontario
country:
title: country
xml:
name: Ctry
type: string
minLength: 2
maxLength: 2
pattern: ^[A-Z]{2}$
description: >-
Address details of the entity (or) the beneficial owner of the
virtual account. Required parameter in the `Address` object.
example: CA
Address-Sync-Response:
title: AddressSyncResponse
xml:
name: Address
type: object
properties:
street_name:
title: street_name
xml:
name: StrtNm
type: string
minLength: 1
maxLength: 70
description: >-
Address details of the entity (or) the beneficial owner of the
virtual account.
example: 3210 Abcd st
building_number:
title: building_number
xml:
name: BldgNb
type: string
minLength: 1
maxLength: 16
description: >-
Address details of the entity (or) the beneficial owner of the
virtual account.
example: '123'
postal_code:
title: postal_code
xml:
name: PstCd
type: string
minLength: 1
maxLength: 16
description: >-
Address details of the entity (or) the beneficial owner of the
virtual account.
example: L5B 111
town_name:
title: town_name
xml:
name: TwnNm
type: string
minLength: 1
maxLength: 35
description: >-
Address details of the entity (or) the beneficial owner of the
virtual account.
example: North York
country_sub_division:
title: country_sub_division
xml:
name: CtrySubDvsn
type: string
minLength: 1
maxLength: 35
description: >-
Address details of the entity (or) the beneficial owner of the
virtual account.
example: Ontario
country:
title: country
xml:
name: Ctry
type: string
minLength: 2
maxLength: 2
pattern: ^[A-Z]{2}$
description: >-
Address details of the entity (or) the beneficial owner of the
virtual account.
example: CA
Beneficial-Owner-Update:
title: BeneficialOwner
xml:
name: BeneficialOwner
allOf:
- $ref: '#/components/schemas/Bo-Contact-Name'
- title: ContactName
- type: object
- required:
- date_of_birth
properties:
date_of_birth:
title: date_of_birth
xml:
name: DateOfBirth
type: string
minLength: 10
maxLength: 10
pattern: >-
^(?:[1-9]\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)$
description: >-
Required parameter in the `Beneficial Owner` object if the
object is used.
Populates the date of birth date pertaining
to the Beneficial owner of the entity. It is in a fixed 10-digit
format (YYYY-MM-DD) as per the ISO standard.
example: '1980-04-01'
address:
$ref: '#/components/schemas/Address'
Beneficial-Owner:
title: BeneficialOwner
xml:
name: BeneficialOwner
allOf:
- $ref: '#/components/schemas/Bo-Contact-Name'
- type: object
- required:
- date_of_birth
properties:
date_of_birth:
title: date_of_birth
xml:
name: DateOfBirth
type: string
minLength: 10
maxLength: 10
pattern: >-
^(?:[1-9]\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)$
description: >-
Required parameter in the `Beneficial Owner` object if the
object is used.
Populates the date of birth date pertaining
to the Beneficial owner of the entity. It is in a fixed 10-digit
format (YYYY-MM-DD) as per the ISO standard.
- For
company (`entity.type`='C'), Beneficial Owner age should be 18
years or above at the time of activation.
- Year (YYYY) and
Month (MM) values in `date_of_birth` cannot be zero.
example: '1980-04-01'
address:
$ref: '#/components/schemas/Address'
Beneficial-Owner-Sync-Response:
title: BeneficialOwnerSyncResponse
xml:
name: BeneficialOwnerSyncResponse
allOf:
- $ref: '#/components/schemas/Bo-Contact-Name'
- type: object
properties:
date_of_birth:
title: date_of_birth
xml:
name: DateOfBirth
type: string
minLength: 10
maxLength: 10
pattern: >-
^(?:[1-9]\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)$
description: >-
Required parameter in the `Beneficial Owner` object if the
object is used.
Populates the date of birth date pertaining
to the Beneficial owner of the entity. It is in a fixed 10-digit
format (YYYY-MM-DD) as per the ISO standard.
example: '1980-04-01'
address:
$ref: '#/components/schemas/Address-Sync-Response'
Purpose-Ref:
title: purpose
xml:
name: Purpose
type: string
enum:
- C
description: >-
This parameter specifies the purpose for the creation of the virtual
account. This is a required parameter for both the `action` parameters,
'RESERVATION' and 'ACTIVATION'.
Allowed value is 'C'.
- 'C' -
Client's Customer
example: C
Virtual-Account-Inquiry-Response:
title: VirtualAccountInquiryResponse
xml:
name: VirtualAccountInquiryResponse
required:
- status
- header_account
- virtual_account
type: object
properties:
request_id:
title: request_id
xml:
name: RequestId
type: string
description: Auto-generated unique identification assigned to the request.
example: 30b9c9d7-d4d9-48ce-8823-f9b3ee276b8d
header_account:
$ref: '#/components/schemas/Header-Account-Sync-Response'
virtual_account:
$ref: '#/components/schemas/Virtual-Account-Sync-Response'
Virtual-Account-Update-Response:
title: VirtualAccountResponse
xml:
name: VirtualAccountResponse
properties:
request_id:
title: request_id
xml:
name: RequestId
type: string
minLength: 1
maxLength: 40
description: Auto-generated unique identification assigned to the request.
example: 29b9c9d7-d4d9-48ce-8823-f9b3ee276b8f
status:
title: status
xml:
name: Status
type: string
minLength: 1
maxLength: 20
description: >-
Status of the request.
Possible statuses are
SUCCESS
REJECTED
PENDING
NOTIFICATION-SUCC
example: SUCCESS
message:
title: message
xml:
name: Message
type: string
minLength: 1
maxLength: 400
description: Detailed response description for a given request.
example: Request accepted Successfully
action:
title: action
xml:
name: Action
type: string
description: >-
Action of the given request.
- ''INTERNALUPDATE''
-
''INTERNALREVIEW''
- ''UPDATE''.
example: UPDATE
branch_code:
title: branch_code
xml:
name: BranchCode
type: string
minLength: 3
maxLength: 4
description: Citi's bank code associated with given a header account number.
example: '820'
error_details:
title: error_details
type: array
xml:
name: ErrorDetails
wrapped: true
items:
$ref: '#/components/schemas/Error-Detail'
virtual_account:
$ref: '#/components/schemas/Virtual-Account-Update'
Virtual-Account-Response:
title: VirtualAccountResponse
xml:
name: VirtualAccountResponse
properties:
request_id:
title: request_id
xml:
name: RequestId
type: string
minLength: 1
maxLength: 40
description: Auto-generated unique identification assigned for the request.
example: 29b9c9d7-d4d9-48ce-8823-f9b3ee276b8f
status:
title: status
xml:
name: Status
type: string
minLength: 1
maxLength: 20
description: >-
Status of the request.
Possible statuses are
SUCCESS
REJECTED
PENDING
example: SUCCESS
message:
title: message
xml:
name: Message
type: string
minLength: 1
maxLength: 400
description: Detailed response for the particular request.
example: Request accepted Successfully
action:
title: action
xml:
name: Action
type: string
description: >-
Action of the given request.
- ''RESERVATION''
-
''ACTIVATION''
- ''DEACTIVATE''.
example: DEACTIVATE
branch_code:
title: branch_code
xml:
name: BranchCode
type: string
minLength: 3
maxLength: 4
description: Citi's bank code associated with given a header account number.
example: '820'
error_details:
title: error_details
type: array
xml:
name: ErrorDetails
wrapped: true
items:
$ref: '#/components/schemas/Error-Detail'
account:
title: account
xml:
name: Account
wrapped: true
type: array
items:
$ref: '#/components/schemas/Accounts'
Accounts:
type: object
title: Accounts
properties:
virtual_account:
title: virtualAccount
xml:
name: VirtualAccount
type: string
minLength: 1
maxLength: 40
description: >-
Required parameter only if the value of the `action` parameter is
set to 'ACTIVATION'.
This parameter specifies the virtual
account to be activated.
example: '0123456789'
entity_id:
title: id
xml:
name: EntityId
type: string
minLength: 20
maxLength: 20
description: >-
ID that was assigned specific to the entity being activated under
this virtual account.
example: EN_45678901234567890
iban:
title: iban
xml:
name: Iban
type: string
description: >-
The International Bank Account Number (IBAN) for the virtual
account.
pattern: ^[A-Z]{2}[0-9]{2}[A-Z0-9]{4}[0-9]{7}([A-Z0-9]?){0,16}$
example: GB29NWBK60161331926819
Error-Detail:
title: ErrorDetail
type: object
xml:
name: ErrorDetail
properties:
code:
title: code
xml:
name: Code
type: string
maxLength: 7
description: >-
Unique ID for the error code.
Under GET method and
callbacks, this parameter is a non-retrievable internal error
code:
CC00013.
issue:
title: issue
xml:
name: Issue
type: string
description: More details about the issue.
maxLength: 200
action:
title: action
xml:
name: Action
type: string
description: Corrective action to be taken to resolve above issue.
maxLength: 350
Error-Message:
title: ErrorMessage
xml:
name: ErrorMessage
description: Description of the error.
properties:
ref_id:
type: string
title: ref_id
xml:
name: RefId
maxLength: 60
pattern: \w*\W*
description: Unique reference ID for a particular request.
error_details:
title: error_details
type: array
items:
$ref: '#/components/schemas/Error-Detail'
xml:
name: ErrorDetails
wrapped: true
httpCode:
title: httpCode
xml:
name: httpCode
type: string
description: HTTP status code of this API.
httpMessage:
title: httpMessage
xml:
name: httpMessage
type: string
description: Short message about the issue.
moreInformation:
title: moreInformation
xml:
name: moreInformation
type: string
description: More information about the issue.
securitySchemes:
clientCredentials:
type: oauth2
description: >
All CitiConnect APIs use the oAuth2 authentication scheme, which
requires a bearer token to authenticate your API call. The Token URL
includes the version of authentication used by this API. See the Citi Authentication API reference for
information on requesting a token.
flows:
clientCredentials:
tokenUrl: /authenticationservices/v3/oauth/token
scopes: {}
responses:
Inquiry-Response:
description: VA Status Inquiry
headers:
apim-guid:
schema:
type: string
description: Citi's unique identification for your request.
Deprecation:
description: >-
The date when the API was stopped or will be stopped by the system
owner. ISO 8601-1:2019 format.
schema:
type: string
format: date-time
Sunset:
description: >-
The date when the API will no longer be supported by the system
owner. The API will no longer be responsive and all REQUESTS will
generate an error. ISO 8601-1:2019 format.
schema:
type: string
format: date-time
Link:
description: Latest working URL that can be used for the same purpose.
schema:
type: string
RateLimit-Limit:
description: >-
The rate limit ceiling for that given request measured in a 24 hour
cycle.
schema:
type: string
RateLimit-Remaining:
description: The number of requests left in a 15 minute window.
schema:
type: string
RateLimit-Reset:
description: The remaining window before the rate limit resets. ISO 8601-1:2019.
schema:
type: string
format: date-time
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/Virtual-Account-Inquiry-Response'
- $ref: '#/components/schemas/Virtual-Account-Response'
examples:
VirtualAccountResponseExample:
$ref: '#/components/examples/Inquiry-Sync-Account-Response'
RequestIDResponseExample:
$ref: '#/components/examples/Reservation-Success-Async'
RequestIDPendingResponseExample:
$ref: '#/components/examples/Reservation-Pending-Inquiry'
application/xml:
schema:
oneOf:
- $ref: '#/components/schemas/Virtual-Account-Inquiry-Response'
- $ref: '#/components/schemas/Virtual-Account-Response'
examples:
VirtualAccountResponseExample:
value: >-
feeb8c90-ee61-4321-8905-c33c746455fd5121842193010000000202133567ACTIVEYDMB0TGcLscEhdjsP0YRlFDGDFGFDG2024-02-29TAX_IDA{{$timestamp}}CN3100
Keele st533L5B
3Y6North
YorkOntarioCNNNGGHJFHJGCFFHG2024-02-29534
cYTross
st533785263caraladoUSUS
RequestIDResponseExample:
value: >-
312e398f-86ca-4afa-839c-c5b12cb8ef87SUCCESSAccount
Reservation Request Successfully
ProcessedRESERVATION9301000000020213356710000000202133575100000002021335831000000020213359110000000202133604
RequestIDPendingResponseExample:
value: >-
29b9c9d7-d4d9-48ce-8823-f9b3ee276b8fPENDINGYour
request is under processing, please retry after
sometime
Accepted-Response:
description: Accepted
headers:
Deprecation:
description: >-
The date when this API was stopped or will be stopped by the system
owner. ISO 8601-1:2019 format.
schema:
type: string
format: date-time
Sunset:
description: >-
The date when this API will no longer be Supported by the system
owner. The API will no longer be responsive and all REQUESTS will
generate an error. ISO 8601-1:2019 format.
schema:
type: string
format: date-time
Link:
description: Latest working URL that can be used for the same purpose.
schema:
type: string
RateLimit-Limit:
description: >-
The rate limit ceiling for that given request measured in a 24 hour
cycle.
schema:
type: string
RateLimit-Remaining:
description: The number of requests left in a 15 minute window.
schema:
type: string
RateLimit-Reset:
description: The remaining window before the rate limit resets. ISO 8601-1:2019.
schema:
type: string
format: date-time
content:
application/json:
schema:
$ref: '#/components/schemas/Virtual-Account-Response'
examples:
SynchronousResponseExample:
$ref: '#/components/examples/Level0-Response'
application/xml:
schema:
$ref: '#/components/schemas/Virtual-Account-Response'
examples:
SynchronousResponseExample:
value: >-
29b9c9d7-d4d9-48ce-8823-f9b3ee276b8fACCEPTEDRequest
accepted Successfully
De-Activation-Accepted-Response:
description: Accepted
content:
application/json:
schema:
$ref: '#/components/schemas/Virtual-Account-Response'
examples:
SynchronousResponseExample:
$ref: '#/components/examples/Level0-Response'
application/xml:
schema:
$ref: '#/components/schemas/Virtual-Account-Response'
examples:
SynchronousResponseExample:
value: >-
29b9c9d7-d4d9-48ce-8823-f9b3ee276b8fACCEPTEDRequest
accepted Successfully
Bad-Request-Sync-Response:
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/Error-Message'
examples:
Bad-Request:
$ref: '#/components/examples/Bad-Request-Sync-Response-Example'
application/xml:
schema:
$ref: '#/components/schemas/Error-Message'
examples:
Bad-Request-Sync-Xml-Response-Example:
$ref: '#/components/examples/Bad-Request-Sync-Response-Example'
De-Activation-Bad-Request-Response:
$ref: '#/components/responses/Bad-Request-Sync-Response'
Bad-Request:
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/Error-Message'
examples:
BadRequest:
$ref: '#/components/examples/Bad-Request-Json-Example'
application/xml:
schema:
$ref: '#/components/schemas/Error-Message'
examples:
BadRequest:
value: >-
ec689822-9864-4c4d-9d68-222467627902VC00012Provided
value is not within the range for the header_account.branch_code
parameter.Please provide a valid value for the
header_account.branch_code parameter, size must be between 3 and
4.
Unauthorized:
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/Error-Message'
examples:
Unauthorized:
$ref: '#/components/examples/Unauthorized-Example'
GatewayUnauthorized:
$ref: '#/components/examples/Gateway-Un-Authorized'
application/xml:
schema:
$ref: '#/components/schemas/Error-Message'
examples:
Unauthorized:
value: >-
ec689822-9864-4c4d-9d68-222467627902CC00007User
does not have authorization to access.Please use
valid credentials to access this
functionality.CC00007User
does not have authorization to access.Please use
valid credentials to access this
functionality.
GatewayUnauthorized:
value: >-
401UnauthorizedInvalid
client identification.
Idempotency-Duplication:
description: Conflict
content:
application/json:
schema:
$ref: '#/components/schemas/Error-Message'
examples:
IdempotencyDuplicationExample:
$ref: '#/components/examples/Idempotency-Duplication-Example'
application/xml:
schema:
$ref: '#/components/schemas/Error-Message'
examples:
IdempotencyDuplicationExample:
value: >-
ec689822-9864-4c4d-9d68-222467627902VC00016Idempotency-Id
provided is currently being used in another
request.Please do not repeat the same request
again.
Forbidden:
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/Error-Message'
examples:
Forbidden:
$ref: '#/components/examples/Forbidden-Example'
application/xml:
schema:
$ref: '#/components/schemas/Error-Message'
examples:
Forbidden:
value: >-
ec689822-9864-4c4d-9d68-222467627902CC00008User
does not have the privileges to access this
functionality.Please reach out to support team
to enable this
feature.
Method-Not-Allowed:
description: Method Not Allowed
content:
application/json:
schema:
$ref: '#/components/schemas/Error-Message'
examples:
MethodNotAllowed:
$ref: '#/components/examples/Method-Not-Allowed-Example'
GatewayMethodNotAllowed:
$ref: '#/components/examples/Gateway-Method-Not-Allowed-Example'
application/xml:
schema:
$ref: '#/components/schemas/Error-Message'
examples:
MethodNotAllowed:
value: >-
ec689822-9864-4c4d-9d68-222467627902CC00007Method
Not AllowedPlease use valid method
type
GatewayMethodNotAllowed:
value: >-
405Method Not
AllowedThe method is not allowed
for the requested URL.
Not-Found:
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/Error-Message'
examples:
NotFound:
$ref: '#/components/examples/Not-Found-Example'
application/xml:
schema:
$ref: '#/components/schemas/Error-Message'
examples:
NotFound:
value: >-
404Not
FoundNo resources match requested
URI
Too-Many-Request:
description: Too Many Request
content:
application/json:
schema:
$ref: '#/components/schemas/Error-Message'
examples:
TooManyRequest:
$ref: '#/components/examples/Too-Many-Request-Example'
application/xml:
schema:
$ref: '#/components/schemas/Error-Message'
examples:
TooManyRequest:
value: >-
ec689822-9864-4c4d-9d68-222467627902CC00009Requests
are exceeding the allowed limitResend the
request after ${time}
minutes
Unsupported-Media-Type:
description: Unsupported Media Type
content:
application/json:
schema:
$ref: '#/components/schemas/Error-Message'
examples:
UnsupportedMediaType:
$ref: '#/components/examples/Unsupported-Media-Type-Example'
application/xml:
schema:
$ref: '#/components/schemas/Error-Message'
examples:
UnsupportedMediaType:
value: >-
ec689822-9864-4c4d-9d68-222467627902CC00002Media
type not supportedPlease use valid content-type
in the
header.
Internal-Server-Error:
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/Error-Message'
examples:
InternalServerError:
$ref: '#/components/examples/Internal-Server-Error-Example'
GatewayInternalServerError:
$ref: '#/components/examples/Gateway-Internal-Server-Error-Example'
InternalError:
$ref: '#/components/examples/Internal-Error-Example'
application/xml:
schema:
$ref: '#/components/schemas/Error-Message'
examples:
InternalServerError:
value: >-
ec689822-9864-4c4d-9d68-222467627902CC00004Unable
to serve your request at this moment.Please
contact the support
team.
GatewayInternalServerError:
value: >-
500Internal
Server ErrorInternal Server
Error
InternalError:
value: >-
ec689822-9864-4c4d-9d68-222467627902CC00013Unable
to process your request at this time.Please
contact the support team for further
assistance.
callbacks:
Reservation-Response:
'{$notificationURL}':
post:
parameters:
- $ref: '#/components/parameters/Apim-Guid'
- $ref: '#/components/parameters/Event-Type'
- $ref: '#/components/parameters/Event-Name'
- $ref: '#/components/parameters/Pagination-Metadata'
description: >-
A periodic status update is triggered in an asynchronous manner
(Callback/PUSH notifications) to the `notificationURL` that the
client shared.
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/Virtual-Account-Response'
examples:
AsynchronousSuccessResponseExample:
$ref: '#/components/examples/Reservation-Success-Async'
AsynchronousFailureResponseExample:
$ref: '#/components/examples/Reservation-Failure-Async'
application/xml:
schema:
$ref: '#/components/schemas/Virtual-Account-Response'
examples:
AsynchronousSuccessResponseExample:
value: >-
e4994334-f776-4234-a304-1bbc5be9eccbRESERVATIONSUCCESSAccount
Reservation Request Successfully
Processed9301000000020153313910000000201533147100000002015331551000000020153316310000000201533171
AsynchronousFailureResponseExample:
value: >-
29b9c9d7-d4d9-48ce-8823-f9b3ee276b8fRESERVATIONREJECTEDVC00001Invalid
Header AccountPlease provide valid Header
Account820
responses:
'202':
description: Accepted
content:
application/json:
schema:
type: object
Activation-Response:
'{$notificationURL}':
post:
parameters:
- $ref: '#/components/parameters/Apim-Guid'
- $ref: '#/components/parameters/Event-Type'
- $ref: '#/components/parameters/Event-Name'
description: >-
Periodic status updates are triggered in an asynchronous manner
(Callback/PUSH notifications) to the `notificationURL` that the
client shared.
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/Virtual-Account-Response'
examples:
AsynchronousSuccessResponseExample:
$ref: '#/components/examples/Activation-Success-Async'
AsynchronousFailureResponseExample:
$ref: '#/components/examples/Activation-Failure-Async'
application/xml:
schema:
$ref: '#/components/schemas/Virtual-Account-Response'
examples:
AsynchronousSuccessResponseExample:
value: >-
bfe1c5f6-35c0-4149-b8e1-adab23da3afbACTIVATIONSUCCESSThe
Virtual Account Number is now
active93010000000201340652eEDWVSV00W-CgC20CbBnGB29NWBK60161331926819
AsynchronousFailureResponseExample:
value: >-
29b9c9d7-d4d9-48ce-8823-f9b3ee276b8fACTIVATIONREJECTEDVC00001Invalid
Virtual accountPlease provide a valid
virtual
account.820
responses:
'202':
description: Accepted
content:
application/json:
schema:
type: object
Update-Response:
'{$notificationURL}':
post:
parameters:
- $ref: '#/components/parameters/Apim-Guid'
- $ref: '#/components/parameters/Event-Type'
- $ref: '#/components/parameters/Event-Name'
description: >-
Periodic status updates are triggered in an asynchronous manner
(Callback/PUSH notifications) to the `notificationURL` that the
client shared.
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/Virtual-Account-Update-Response'
examples:
AsynchronousEntityDetailsSuccessResponseExample:
$ref: '#/components/examples/Update-Entity-Details-Async'
AsynchronousPostingRestrictionSuccessResponseExample:
$ref: '#/components/examples/Update-Posting-Restriction-Async'
AsynchronousFailureResponseExample:
$ref: '#/components/examples/Update-Failure-Async'
AsynchronousRescreenSuccessResponseExample:
$ref: '#/components/examples/Rescreen-Async'
AsynchronousBroadcastSuccessResponseExample:
$ref: '#/components/examples/Broadcast-Async'
application/xml:
schema:
$ref: '#/components/schemas/Virtual-Account-Update-Response'
examples:
AsynchronousEntityDetailsSuccessResponseExample:
value: >-
29b9c9d7-d4d9-48ce-8823-f9b3ee276b8fUPDATESUCCESSVirtual
account number is updated
now.8200123456789INCEN_45678901234567890Cwww.ddee.comABCTradeBussCATAX_ID1234567890US3210
Abcd st123L5B
111North
YorkOntarioCAJamesWhite2001-05-013210
Abcd st123L5B
111North
YorkOntarioCAMarkWhite2000-05-013210
Abcd st123L5B
111North
YorkOntarioCA
AsynchronousPostingRestrictionSuccessResponseExample:
value: >-
29b9c9d7-d4d9-48ce-8823-f9b3ee276b8fUPDATESUCCESSVirtual
account 323545 is now
updated.8200123456789YN
AsynchronousFailureResponseExample:
value: >-
29b9c9d7-d4d9-48ce-8823-f9b3ee276b8fUPDATEREJECTEDVC00001Invalid
virtual account.Please provide a valid
virtual
account820
AsynchronousRescreenSuccessResponseExample:
value: >-
29b9c9d7-d4d9-48ce-8823-f9b3ee276b8fINTERNALREVIEWNOTIFICATION-SUCCPlease
note the merchant account reflected has been
changed.8200123456789INCEN_45678901234567890Cwww.ddee.comABCTradeBussCATAX_ID1234567890US3210
Abcd st123L5B
111North
YorkOntarioCAJamesWhite2001-05-013210
Abcd st123L5B
111North
YorkOntarioCAMarkWhite2000-05-013210
Abcd st123L5B
111North
YorkOntarioCA
AsynchronousBroadcastSuccessResponseExample:
value: >-
29b9c9d7-d4d9-48ce-8823-f9b3ee276b8fINTERNALUPDATENOTIFICATION-SUCCPlease
note the merchant account reflected has been changed per
your
request.8200123456789INCEN_45678901234567890Cwww.ddee.comABCTradeBussCATAX_ID1234567890US3210
Abcd st123L5B
111North
YorkOntarioCAJamesWhite2001-05-013210
Abcd st123L5B
111North
YorkOntarioCAMarkWhite2000-05-013210
Abcd st123L5B
111North
YorkOntarioCA
responses:
'202':
description: Accepted
content:
application/json:
schema:
type: object
De-Activation-Response:
'{$notificationURL}':
post:
parameters:
- $ref: '#/components/parameters/Apim-Guid'
- $ref: '#/components/parameters/Event-Type'
- $ref: '#/components/parameters/Event-Name'
description: >-
Periodic status updates are triggered in an asynchronous manner
(Callback/PUSH notifications) to the `notificationURL` that the
client shared.
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/Virtual-Account-Response'
examples:
AsynchronousSuccessResponseExample:
$ref: '#/components/examples/De-Activation-Success-Async'
AsynchronousFailureResponseExample:
$ref: '#/components/examples/De-Activation-Failure-Async'
application/xml:
schema:
$ref: '#/components/schemas/Virtual-Account-Response'
examples:
AsynchronousSuccessResponseExample:
value: >-
878a21a6-ad8c-456e-bdc7-d293eccdbcf5DEACTIVATESUCCESSThe
Virtual Account Number is now successfully
Closed.93010000000201340652
AsynchronousFailureResponseExample:
value: >-
29b9c9d7-d4d9-48ce-8823-f9b3ee276b8fDEACTIVATEREJECTEDVC00001Invalid
virtual account.Please provide a valid
virtual
account.820
responses:
'202':
description: Accepted
content:
application/json:
schema:
type: object
examples:
Reservation-Example:
value:
action: RESERVATION
header_account:
account: '0011224455'
branch_code: '930'
number_of_accounts_required: 50
purpose: C
Activation-Entity-Id-Example:
value:
action: ACTIVATION
header_account:
account: '0011224455'
branch_code: '930'
virtual_account:
account: '0123456789'
purpose: C
balance_display_option: 'Y'
entity:
id: EN_45678901234567890
country_of_operation: CA
Activation-Entity-Details-Example:
value:
action: ACTIVATION
header_account:
account: '0011224455'
branch_code: '930'
virtual_account:
account: '0123456789'
purpose: C
balance_display_option: 'Y'
entity:
last_name: INC
type: C
website: www.dd.com
store_name: ABC
business_purpose: Trade
acronym: Buss
country_of_operation: CA
org_prvt_identification:
type: TAX_ID
id: '1234567890'
country_of_issuance: US
address:
street_name: 3210 Abcd st
building_number: '123'
postal_code: L5B 111
town_name: North York
country_sub_division: Ontario
country: CA
beneficial_owner:
- last_name: James
first_name: White
date_of_birth: '2001-05-01'
address:
street_name: 3210 Abcd st
building_number: '123'
postal_code: L5B 111
town_name: North York
country_sub_division: Ontario
country: CA
- last_name: Mark
first_name: White
date_of_birth: '2000-05-01'
address:
street_name: 3210 Abcd st
building_number: '12'
postal_code: L5B 111
town_name: North York
country_sub_division: Ontario
country: CA
Update-Entity-Details-Example:
value:
action: UPDATE
header_account:
account: '01010202030'
branch_code: '930'
virtual_account:
account: '0123456789'
entity:
last_name: INC
id: EN_45678901234567890
type: C
website: www.ddee.com
store_name: ABC
business_purpose: Trade
acronym: Buss
country_of_operation: CA
org_prvt_identification:
type: TAX_ID
id: '1234567890'
country_of_issuance: US
address:
street_name: 3210 Abcd st
building_number: '123'
postal_code: L5B 111
town_name: North York
country_sub_division: Ontario
country: CA
beneficial_owner:
- last_name: James
first_name: White
date_of_birth: '2001-05-01'
address:
street_name: 3210 Abcd st
building_number: '123'
postal_code: L5B 111
town_name: North York
country_sub_division: Ontario
country: CA
- last_name: Mark
first_name: White
date_of_birth: '2000-05-01'
address:
street_name: 3210 Abcd st
building_number: '123'
postal_code: L5B 111
town_name: North York
country_sub_division: Ontario
country: CA
Update-Posting-Restriction-Example:
value:
action: UPDATE
header_account:
account: '01010202030'
branch_code: '930'
virtual_account:
account: '0123456789'
credit_debit_preferences:
disallow_credit: 'Y'
disallow_debit: 'N'
Level0-Response:
value:
request_id: 29b9c9d7-d4d9-48ce-8823-f9b3ee276b8f
status: ACCEPTED
message: Request accepted Successfully
Inquiry-Sync-Account-Response:
value:
request_id: 0ae52a57-01ff-43a0-a8cc-6112dfcb4c64
header_account:
account: '0123456789'
branch_code: '820'
virtual_account:
account: '0123456789'
status: ACTIVATED
balance_display_option: 'Y'
credit_debit_preferences:
disallow_credit: 'Y'
disallow_debit: 'N'
entity:
id: EN_123456789
last_name: David Copperfield
date_of_birth: '1999-11-11'
org_prvt_identification:
type: TAX_ID
id: '1234567890'
country_of_issuance: US
address:
street_name: Interface Lane
building_number: '1101'
postal_code: '123456'
town_name: Charlotte
country_sub_division: NC
country: US
beneficial_owner:
- last_name: James
first_name: White
date_of_birth: '1999-11-11'
address:
street_name: 3210 Abcd st
building_number: '123'
postal_code: L5B 111
town_name: North York
country_sub_division: Ontario
country: CA
Reservation-Success-Async:
value:
request_id: 29b9c9d7-d4d9-48ce-8823-f9b3ee276b8f
action: RESERVATION
status: SUCCESS
message: Account Reservation Request Successfully Processed
branch_code: '820'
account:
- virtual_account: '25252548'
Reservation-Pending-Inquiry:
value:
request_id: 29b9c9d7-d4d9-48ce-8823-f9b3ee276b8f
status: PENDING
message: Your request is under processing, please retry after sometime
Reservation-Failure-Async:
value:
request_id: 29b9c9d7-d4d9-48ce-8823-f9b3ee276b8f
action: RESERVATION
status: REJECTED
error_details:
- code: VC00001
issue: Invalid Header Account
action: Please provide valid Header Account
branch_code: '820'
Activation-Success-Async:
value:
request_id: 29b9c9d7-d4d9-48ce-8823-f9b3ee276b8f
action: ACTIVATION
status: SUCCESS
message: Virtual account number is now active.
branch_code: '820'
account:
- virtual_account: '25252548'
entity_id: EN_45678901234567890
iban: GB29NWBK60161331926819
Activation-Failure-Async:
value:
request_id: 29b9c9d7-d4d9-48ce-8823-f9b3ee276b8f
action: ACTIVATION
status: REJECTED
error_details:
- code: VC00001
issue: Invalid Virtual account
action: Please provide a valid virtual account.
branch_code: '820'
Update-Entity-Details-Async:
value:
request_id: 29b9c9d7-d4d9-48ce-8823-f9b3ee276b8f
action: UPDATE
status: SUCCESS
message: Virtual account number is updated now.
branch_code: '820'
virtual_account:
account: '0123456789'
entity:
last_name: INC
id: EN_45678901234567890
type: C
website: www.ddee.com
store_name: ABC
business_purpose: Trade
acronym: Buss
country_of_operation: CA
org_prvt_identification:
type: TAX_ID
id: '1234567890'
country_of_issuance: US
address:
street_name: 3210 Abcd st
building_number: '123'
postal_code: L5B 111
town_name: North York
country_sub_division: Ontario
country: CA
beneficial_owner:
- last_name: James
first_name: White
date_of_birth: '2001-05-01'
address:
street_name: 3210 Abcd st
building_number: '123'
postal_code: L5B 111
town_name: North York
country_sub_division: Ontario
country: CA
- last_name: Mark
first_name: White
date_of_birth: '2000-05-01'
address:
street_name: 3210 Abcd st
building_number: '123'
postal_code: L5B 111
town_name: North York
country_sub_division: Ontario
country: CA
Rescreen-Async:
value:
request_id: 29b9c9d7-d4d9-48ce-8823-f9b3ee276b8f
action: INTERNALREVIEW
status: NOTIFICATION-SUCC
message: Please note the merchant account reflected has been changed.
branch_code: '820'
virtual_account:
account: '0123456789'
entity:
last_name: INC
id: EN_45678901234567890
type: C
website: www.ddee.com
store_name: ABC
business_purpose: Trade
acronym: Buss
country_of_operation: CA
org_prvt_identification:
type: TAX_ID
id: '1234567890'
country_of_issuance: US
address:
street_name: 3210 Abcd st
building_number: '123'
postal_code: L5B 111
town_name: North York
country_sub_division: Ontario
country: CA
beneficial_owner:
- last_name: James
first_name: White
date_of_birth: '2001-05-01'
address:
street_name: 3210 Abcd st
building_number: '123'
postal_code: L5B 111
town_name: North York
country_sub_division: Ontario
country: CA
- last_name: Mark
first_name: White
date_of_birth: '2000-05-01'
address:
street_name: 3210 Abcd st
building_number: '123'
postal_code: L5B 111
town_name: North York
country_sub_division: Ontario
country: CA
Broadcast-Async:
value:
request_id: 29b9c9d7-d4d9-48ce-8823-f9b3ee276b8f
action: INTERNALUPDATE
status: NOTIFICATION-SUCC
message: >-
Please note the merchant account reflected has been changed per your
request.
branch_code: '820'
virtual_account:
account: '0123456789'
entity:
last_name: INC
id: EN_45678901234567890
type: C
website: www.ddee.com
store_name: ABC
business_purpose: Trade
acronym: Buss
country_of_operation: CA
org_prvt_identification:
type: TAX_ID
id: '1234567890'
country_of_issuance: US
address:
street_name: 3210 Abcd st
building_number: '123'
postal_code: L5B 111
town_name: North York
country_sub_division: Ontario
country: CA
beneficial_owner:
- last_name: James
first_name: White
date_of_birth: '2001-05-01'
address:
street_name: 3210 Abcd st
building_number: '123'
postal_code: L5B 111
town_name: North York
country_sub_division: Ontario
country: CA
- last_name: Mark
first_name: White
date_of_birth: '2000-05-01'
address:
street_name: 3210 Abcd st
building_number: '123'
postal_code: L5B 111
town_name: North York
country_sub_division: Ontario
country: CA
Update-Posting-Restriction-Async:
value:
request_id: 29b9c9d7-d4d9-48ce-8823-f9b3ee276b8f
action: UPDATE
status: SUCCESS
message: Virtual account 323545 is now updated.
branch_code: '820'
virtual_account:
account: '0123456789'
credit_debit_preferences:
disallow_credit: 'Y'
disallow_debit: 'N'
Update-Failure-Async:
value:
request_id: 29b9c9d7-d4d9-48ce-8823-f9b3ee276b8f
action: UPDATE
status: REJECTED
error_details:
- code: VC00001
issue: Invalid virtual account.
action: Please provide a valid virtual account
branch_code: '820'
De-Activation-Success-Async:
value:
request_id: 29b9c9d7-d4d9-48ce-8823-f9b3ee276b8f
action: DEACTIVATE
status: SUCCESS
message: Virtual account number is closed successfully.
branch_code: '820'
account:
- virtual_account: '25252548'
De-Activation-Failure-Async:
value:
request_id: 29b9c9d7-d4d9-48ce-8823-f9b3ee276b8f
action: DEACTIVATE
status: REJECTED
error_details:
- code: VC00001
issue: Invalid virtual account.
action: Please provide a valid virtual account.
branch_code: '820'
Bad-Request-Json-Example:
value:
ref_id: ec689822-9864-4c4d-9d68-222467627902
error_details:
- code: VC00012
issue: >-
Provided value is not within the range for the
header_account.branch_code parameter.
action: >-
Please provide a valid value for the header_account.branch_code
parameter, size must be between 3 and 4.
Bad-Request-Sync-Response-Example:
value:
ref_id: ec689822-9864-4c4d-9d68-222467627902
error_details:
- code: VC00012
issue: >-
Provided value is not within the range for the virtual_account
parameter.
action: >-
please provide valid value for the virtual_account parameter, size
must be between 8 and 12.
Unauthorized-Example:
value:
ref_id: ec689822-9864-4c4d-9d68-222467627902
error_details:
- code: CC00007
issue: User does not have authorization to access.
action: Please use valid credentials to access this functionality.
- code: CC00007
issue: User does not have authorization to access.
action: Please use valid credentials to access this functionality.
Gateway-Un-Authorized:
value:
httpCode: '401'
httpMessage: Unauthorized
moreInformation: Invalid client identification.
Method-Not-Allowed-Example:
value:
ref_id: ec689822-9864-4c4d-9d68-222467627902
error_details:
- code: CC00007
issue: Method Not Allowed
action: Please use valid method type
Gateway-Method-Not-Allowed-Example:
value:
httpCode: '405'
httpMessage: Method Not Allowed
moreInformation: The method is not allowed for the requested URL.
Unsupported-Media-Type-Example:
value:
ref_id: ec689822-9864-4c4d-9d68-222467627902
error_details:
- code: CC00002
issue: Media type not supported
action: Please use valid content-type in the header.
Internal-Server-Error-Example:
value:
ref_id: ec689822-9864-4c4d-9d68-222467627902
error_details:
- code: CC00004
issue: Unable to serve your request at this moment.
action: Please contact the support team.
Internal-Error-Example:
value:
ref_id: ec689822-9864-4c4d-9d68-222467627902
error_details:
- code: CC00013
issue: Unable to process your request at this time.
action: Please contact the support team for further assistance.
Gateway-Internal-Server-Error-Example:
value:
httpCode: '500'
httpMessage: Internal Server Error
moreInformation: Internal Server Error
Forbidden-Example:
value:
ref_id: ec689822-9864-4c4d-9d68-222467627902
error_details:
- code: CC00008
issue: User does not have the privileges to access this functionality.
action: Please reach out to support team to enable this feature.
Not-Found-Example:
value:
httpCode: '404'
httpMessage: Not Found
moreInformation: No resources to match the requested URI.
Too-Many-Request-Example:
value:
ref_id: ec689822-9864-4c4d-9d68-222467627902
error_details:
- code: CC00009
issue: Requests are exceeding the allowed limit
action: Resend the request after ${time} minutes
Idempotency-Duplication-Example:
value:
ref_id: ec689822-9864-4c4d-9d68-222467627902
error_details:
- code: VC00016
issue: >-
Idempotency-Id provided is currently being used in another
request.
action: Please do not repeat the same request again.