Introduction
Daytona Capital Management HUB is a structured system that allows Pay-in-Partners, henceforth referred to as Agents to connect to various web based integrations on the DCM system. The Agent will receive DCM rates that will form part of a calculated value which will be passed on to their Customer.
Thereafter, the Agent can connect to DCM's end-point to create transactions with the intention of specifying the Destination country, along with the foreign currency calculated after receiving the rates. All agents can send foreign currency to the specified foreign countries, based on contractual agreements with DCM.
DCM will debit the Agents account based on the USD value of the foreign amount, this includes the calculated rate, with added mark-up at the point of transaction settlement. This added mark- up is subject to change without prior notice to the agents.
Differences between Inwards and outwards methods
- Inwards - Transactions routed to pay out in South Africa. Currently only bank account transfer is supported.
- Outwards - Transactions to pay out in the rest of the world. Supports COTC, Bank Account and Mobile Wallet transfers.
Integration
Agents that will be integrating with DCM are advised to prepare the following before beginning the integration:
- IP Address for QA/Test environment
- IP Address for Production environment
- Initial technical call for introduction
- Demonstration of the agent system
- Technical contact list
- Managerial contact list
- Means of contact during integration (E.g. Slack, Skype, WhatsApp etc.)
Testing environment
DCM testing environment is open to all agents integrating with DCM to send through test transaction data which will be transferred to the pay-out partner’s test environment.
DCM Testing environment endpoint:
https://dcmtest.nvizible.co.za/{Location}/{Resource}/
Production environment
DCM production environment constitutes the ability to create transactions with the intent on routing the transactions to the specified Pay-Out country based on the fields specified in the “Payload” section of this Integration Document. The production environment is a fully tested, robust platform with 24/7 access, and a dedicated production support team for any queries an Agent might have.
DCM Production environment endpoint:
https://dcm.daytonacap.com/v2/{Location}/{Resource}/
Authentication
DcmLogin
"DcmLogin" : {
"userId": "*********"
}
All requests made to the DCM system will be authenticated with basic https authentication including the username and password given to the Agent once a contract is signed with DCM.
The DcmLogin object nested in the DcmRequest is used as additional authentication.
The value of the userId payload parameter will be given to the agent once the contract has been signed with DCM.
- Test credentials will be sent when the agreement to start development has begun.
- Production credentials will be sent only when the DCM team has signed off that all test cases and all development has been done to their satisfaction.
Flow

Inwards Methods (South African Account)
PostTransaction and RetryTransaction
DCM inwards example request
curl --location --request POST 'https://dcmtest.nvizible.co.za/api/postTransaction' \
--header 'Authorization: Basic encodedUserPass' \
--header 'Content-Type: application/json' \
--data-raw '{
"DcmRequest": [
{
"ReferenceNo": "dcmqa10131409",
"PayoutType": "BankAccount",
"PayoutCountry": "ZA",
"RoutingCode": "HPI001",
"BankRoute": "HPI01",
"ForeignCurrency": "ZAR",
"ForeignAmount": "2500.00",
"RemitPurpose": "Gift",
"SenderFirstName": "Laveen",
"SenderLastName": "Tepan",
"SenderMSISDN": "0874464125",
"SenderAddress": "70 Blue Street",
"SenderAddressCountry": "PAK",
"BeneficiaryFirstName": "Divey",
"BeneficiaryLastName": "Jain",
"BeneficiaryMsisdn": "0842234453",
"BeneficiaryAccountNo": "123456789",
"BeneficiaryBranchCode": "683000",
"BeneficiaryAddress": "1234 Long Street",
"BeneficiaryEmail" : "abc@test.com"
"BeneficiaryNationalityCountryISOCode": "ZAF",
"CustomerDateOfBirth": "1975-05-05",
"CustomerIdExpiryDate": "2020-12-14",
"SubAgent": "Originating Bank",
"DcmLogin": {
"userId": "*********"
}
}
]
}'
Example response
{
"DcmResponse": {
"responseCode": "206",
"responseMessage": "Success",
"payoutPartnerRef": "HPI59F60FB8D1DB5",
"DCode": "00001217008480681685",
"payOutPartnerRefName": "HPTransactionId",
"DcmTransactionFee": "0.00",
"Rate": "14.567240000000",
"payInPartnerRef": "dcmqa10131409"
}
}
The PostTransaction endpoint is used to create transactions on the DCM server with the intent of specifying information needed to have the amount in foreign currency paid out to the specified foreign country. This is a 2-tier method, where the creation and confirmation of a transaction is combined into one method. The result of this method is a
- status code
- Response message
- pay-out partner reference number
The response also includes a DCode, which is to be stored as it will be used in future transactions (E.g. Retry & CheckStatus). The response payload will also include the rate used when calculating the USD equivalent of the foreign amount sent, which is debited from the Agent’s account.
| Parameter Name | Explanation | Valid Fields | Mandatory |
|---|---|---|---|
| ReferenceNo | This is the Agents internal reference number | Agent reference number should be between 12 & 16 numeric characters | Yes |
| PayoutType | The type of pay-out that will occur | BankAccount COTC Mobile Wallet | Yes |
| PayoutCountry | The country code where the recipient will be collecting the funds | ZA PK BD Etc. | Yes |
| RoutingCode | The route to the pay-out partner given to agent | DCM001 | Yes |
| BankRoute | The bank route to the pay-out partners’ bank where the recipient will be collecting the funds | JANA HPT02 HPKB | Yes |
| ForeignCurrency | The pay-out country’s’ currency in ISO3 format | ZAR | Yes |
| ForeignAmount | The amount requested to be paid out in foreign currency | 2500.00 | Yes |
| RemitPurpose | The purpose of the transaction being created | Gift Migrant worker remittances (excluding compensation) Adjustments Reversals/Refund ETC. | Yes |
| SenderFirstName | The first name of the customer initiating the transaction | Minimum = 4 Characters Maximum = 45 Characters | Yes |
| SenderLastName | The last name of the customer initiating the transaction | Minimum = 4 Characters Maximum = 40 Characters | Yes |
| SenderMSISDN | The contact number of the customer initiating the transaction | Valid Number between 8 & 22 digits | Yes |
| SenderAddress | The address of the customer initiating the transaction | 1234 Test Road | Yes |
| SenderAddressCountry | The ISO3 country code where the customer initiating the transaction resides | IND UAE PAK | Yes |
| BeneficiaryFirstName | The first name of the recipient collecting the funds in the pay-out country | Minimum = 4 Characters Maximum = 45 Characters | Yes |
| BeneficiaryLastName | The last name of the recipient collecting the funds in the pay-out country | Minimum = 4 Characters Maximum = 40 Characters | Yes |
| BeneficiaryMSISDN | The contact number of the recipient collecting the funds in the pay-out country | Valid Number between 8 & 22 digits | Yes |
| BeneficiaryAccountNo | The bank account number of the beneficiary collecting the funds in the pay-out country | 65165156228733 PK42UNIL0109000 | On Bank Account |
| BeneficiaryBranchCode | The branch code of the bank where the beneficiary will be collecting the funds | BD030109 1073 | Yes |
| BeneficiaryAddress | The address where the beneficiary resides | 123 Short Street | Yes |
| BeneficiaryEmail | The email address of the of the beneficiary | abc@test.com | Yes |
| BeneficiaryNationalityCountryISOCode | The ISO3 country code of the beneficiary | ZAF | Yes |
| CustomerDateOfBirth | Customer Date of Birth | 1975-05-05 | Date Format |
| CustomerIdExpiryDate | The date when the customers ID will expire | 2022-01-31 | Yes |
| SubAgent | The name of the originating money transfer operator | Originating Bank | Aggregators Only |
URL for Post Transaction:
QA : https://dcmtest.nvizible.co.za/api/postTransaction
Production : https://dcm.daytonacap.com/v2/api/postTransaction
URL for Retry Transaction:
QA : https://dcmtest.nvizible.co.za/api/retry
Production : https://dcm.daytonacap.com/v2/api/retry
CheckStatus
DCM inwards example request
curl --location --request POST 'https://dcmtest.nvizible.co.za/api/checkStatus' \
--header 'Authorization: Basic encodedUserPass' \
--header 'Content-Type: application/json' \
--data-raw '{
"DcmRequest": [
{
"ReferenceNo": "dcmqa101296",
"RoutingCode": "HPI001",
"BankRoute": "HPI01",
"Action": "checkStatus",
"DCode": "00001296477885430696",
"DcmLogin": {
"userId": "*********"
}
}
]
}'
Example response
{
"DcmResponse": {
"responseCode": "206",
"responseMessage": "Sent to partner. Awaiting confirmation",
"payoutPartnerRef": "HPI38305697CC6BCE",
"DCode": "00006027797912219463",
"payOutPartnerRefName": "HPTransactionId",
"DcmTransactionFee": "0.00",
"Rate": "14.567240000000",
"payInPartnerRef": "dcmqa101287"
}
}
The checkStatus endpoint is used to check the status of the transaction, after doing a PostTransaction call. The check status method will return the current status of the transaction within the DCM system, or will return the status of the transaction with the pay-out partner’s system.
| Parameter Name | Explanation | Valid Fields | Mandatory |
|---|---|---|---|
| ReferenceNo | This is the Agents internal reference number | Agents reference number should be between 14 & 20 characters | Yes |
| RoutingCode | The route to the pay-out partner given to agent | DCM001 | Yes |
| BankRoute | The bank route to the pay-out partners’ bank where the recipient will be collecting the funds | JANA HPT02 HPKB | Yes |
| DCode | DCM’s internal reference number to keep track of the transaction | 00001675199527373774 | Yes |
URL for Check Status:
QA : https://dcmtest.nvizible.co.za/api/checkStatus
Production : https://dcm.daytonacap.com/v2/api/checkStatus
CancelTransaction
Please note that Cancellation will be a manual process unless advised by DCM Team, please liaise with the DCM support team.
CheckAgentBalance
Request example
curl --location --request POST 'https://dcmtest.nvizible.co.za/api/checkAgentBalance' \
--header 'Authorization: Basic encodedUserPass' \
--header 'Content-Type: application/json' \
--data-raw '{
"DcmRequest": [
{
"DcmLogin": {
"userId": "*********"
}
}
]
}'
Example response
{
"DcmResponse": {
"responseCode": "200",
"responseMessage": "Success",
"payoutPartnerRef": "",
"DCode": "",
"localCurrency": "ZAR",
"countryCode": "ZA",
"foreignBalance": "14867.150000000000",
"usdBalance": "1000.000000000000",
"payOutPartnerRefName": "",
"payInPartnerRef": ""
}
}
The checkAgentBalance endpoint can be called by the Agent at any interval, usually every 3 hours, to check the balance of the Agent’s account with DCM in USD and the equivalent balance in the Agent’s local currency.
URL for checkAgentBalance:
QA : https://dcmtest.nvizible.co.za/api/checkAgentBalance
Production : https://dcm.daytonacap.com/v2/api/checkAgentBalance
GetAgentRates
Request example
curl --location --request GET 'https://dcmtest.nvizible.co.za/api/getagentrates' \
--header 'Authorization: Basic encodedUserPass'
Example response
{
"responseCode": 200,
"DcmResponse": [
{
"Currency": "XOF",
"Rate": 429
},
{
"Currency": "USD",
"Rate": 1
},
{
"Currency": "EUR",
"Rate": 1.187
}
]
}
The getAgentRates endpoint can be called by the Agent at any interval, this method is to check the current rate of the destination currency with DCM in USD. We recommend checking the current rate as per agreement with DCM Team.
URL for getAgentRate::
QA : https://dcmtest.nvizible.co.za/api/getagentrates
Production : https://dcm.daytonacap.com/v2/api/getagentrates
GetAgentBanks
Request example
curl --location --request GET 'https://dcmtest.nvizible.co.za/api/getAgentBanks' \
--header 'Authorization: Basic encodedUserPass' \
--header 'Content-Type: application/json' \
--data-raw '{
"DcmRequest": [
{
"DcmLogin": {
"userId": "*********"
}
}
]
}'
Example response
{
"responseCode": "200",
"DcmResponse": {
"FromDate": {
"date": "2016-07-29 15:49:52.000000",
"timezone_type": 3,
"timezone": "Africa/Johannesburg"
},
"Updated": [
{
"BankName": "Janata Bank",
"BankRoute": "JANA",
"BankType": "COTC",
"AllowsQuote": false,
"bankBranches": [
{
"BranchName": null,
"BranchCode": null,
"Country": "BANGLADESH",
"Description": null,
"BankRoute": "JANA"
}
]
},
{
"BankName": "Brac Bank",
"BankRoute": "MT12",
"BankType": "COTC",
"AllowsQuote": true,
"bankBranches": [
{
"BranchName": "HEAD OFFICE",
"BranchCode": "BD010001",
"Country": "BANGLADESH",
"Description": "Use UAT file for beneficiary details",
"BankRoute": "MT12"
},
{
"BranchName": "TEJGAON DHAKA",
"BranchCode": "BD0301029",
"Country": "BANGLADESH",
"Description": "Use UAT file for beneficiary details",
"BankRoute": "MT12"
}
]
},
{
"BankName": "Capital Bank Botswana",
"BankRoute": "CBBP",
"BankType": "COTC",
"AllowsQuote": false,
"bankBranches": [
{
"BranchName": null,
"BranchCode": null,
"Country": "BOTSWANA",
"Description": null,
"BankRoute": "CBBP"
}
]
},
{
"Disabled": [
{
"BankName": "Post Office Savings Bank",
"BankRoute": "MT37",
"BankType": "BankAccount",
"AllowsQuote": true,
"bankBranches": [
{
"BranchName": "ALL BRANCHES",
"BranchCode": "081",
"Country": "SINGAPORE",
"Description": "Use UAT file for beneficiary details",
"BankRoute": "MT37"
}
]
}
]
}
]
}
}
The getAgentBanks endpoint can be called by the Agent, this method is to check the current banks with corridors that DCM offers to the Agent. The getBanks call will provide the agent with different responses when doing the call
Initial Call – the initial call will result in getting all of the banks DCM has to offer the agent, The agent will need to store the list of banks on their system after the first call as the next calls will not include the initial list
Any calls after the initial getBanks call will result in either an updated bank list or disabled bank list which the agent will need to update on their side once called if any data has changed.
The updated and disable keys will always remain in the response, even if the list is blank or with data
The Bank response will include the following for each bank:
- BankName
- BankRoute
- BankType
- AllowsQuote
Each bank that has a branch/branches associated with it will include the following:
- BranchName
- BranchCode
- Country
- BankRoute
- Description (A brief comment on the branch if needed)
URL for getAgentBanks
QA : https://dcmtest.nvizible.co.za/api/getAgentBanks
Production : https://dcm.daytonacap.com/v2/api/getAgentBanks
Outwards Methods
Agent PostTransaction
DCM outwards example request
curl --location --request POST 'https://dcmtest.nvizible.co.za/api/postTransaction' \
--header 'Authorization: Basic encodedUserPass' \
--header 'Content-Type: application/json' \
--data-raw '{
"DcmRequest": [
{
"PayoutType": "BankAccount",
"ReferenceNo": "11422000000056",
"ForeignCurrency": "BDT",
"ForeignAmount": "1200.89",
"RemitPurpose": "Family",
"BeneficiaryFirstName": "Fred Stoney",
"BeneficiaryLastName": "Flintstone",
"BeneficiaryMSISDN": "8801758724781",
"BeneficiaryNationalityCountryISOCode": "BGD",
"BeneficiaryAccountNo": "123456789",
"BeneficiaryBranchCode": "BD0301029",
"BranchCode": "BD0301029",
"BeneficiaryBranchName": "DHAKA",
"BeneficiaryAddress": "Bangladesh",
"SenderFirstName": "Mickey",
"SenderLastName": "Mouse",
"SenderMSISDN": "44835578009",
"SenderAddress": "United Kingdom",
"SenderAddressStreet": "Aurora Street",
"SenderCountryCode": "GB",
"SenderAddressCity": "London",
"SenderNationalityCountryISOCode": "GBR",
"SenderAddressCountry": "United Kingdom",
"SenderCurrency": "GBP",
"SenderCountry": "GBR",
"SenderCity": "London",
"SenderAddressZIP": "tH4 5BX",
"SenderGender": "M",
"SenderProvinceState": "Oxfordshire",
"Suburb": "London",
"StreetNo": "69",
"BuildingNo": " 69",
"SenderIdCountryISOCode": "GBR",
"SenderId": "9307068907098",
"CustomerDateOfBirth": "1990-01-08",
"CustomerIdExpiryDate": "2022-10-10",
"CustomerNationalityCode": "GB",
"CustomerIdIssueDate": "1995-05-05",
"CustomerIDType": "53",
"CustomerAddressCity": "London",
"CustomerIdIssuedAt": "GB",
"CustomerAddressCountryCode": "GB",
"IdType": "2",
"PayoutCountry": "BD",
"BranchName": "TEJGAON DHAKA",
"AccountTtile": "Brac Bank Limited",
"RoutingCode": "DCM001",
"BankRoute": "MT12",
"SubAgent": "Originating Bank",
"DcmLogin": {
"userId": "*********"
}
}
]
}'
Example response
{
"DcmResponse": {
"responseCode": "200",
"responseMessage": "Success",
"payoutPartnerRef": "HPY000001061",
"DCode": "00001786794636911470",
"payOutPartnerRefName": "PIN",
"payInPartnerRef": "11422xxxxxx"
}
}
The PostTransaction endpoint is used to create transactions on the DCM server with the intent of specifying information needed to have the amount in foreign currency paid out to the specified foreign country. This is a 2-tier method, where the creation and confirmation of a transaction is combined into one method. The result of this method is a
- status code
- Response message
- pay-out partner reference number
The response also includes a DCode, which is to be stored as it will be used in future transactions (E.g. CheckStatus). The response payload will also include the rate used when calculating the USD equivalent of the foreign amount sent, which is debited from the Agent’s account.
| Parameter Name | Explanation | Valid Fields | Mandatory |
|---|---|---|---|
| PayoutType | The type of pay-out that will occur | BankAccount COTC Mobile Wallet | Yes |
| ReferenceNo | This is the Agents internal reference number | Agent reference number should be between 12 & 16 numeric characters | Yes |
| ForeignCurrency | The pay-out country’s’ currency in ISO3 format | ZAR | Yes |
| ForeignAmount | The amount requested to be paid out in foreign currency | 2500.00 | Yes |
| RemitPurpose | The purpose of the transaction being created | Gift Migrant worker remittances (excluding compensation) Adjustments Reversals/Refund ETC. | Yes |
| BeneficiaryFirstName | The first name of the recipient collecting the funds in the pay-out country | Minimum = 4 Characters Maximum = 45 Characters | Yes |
| BeneficiaryLastName | The last name of the recipient collecting the funds in the pay-out country | Minimum = 4 Characters Maximum = 40 Characters | Yes |
| BeneficiaryMSISDN | The contact number of the recipient collecting the funds in the pay-out country | Valid Number between 8 & 22 digits | Yes |
| BeneficiaryNationalityCountryISOCode | The ISO3 country code of the beneficiary | ZAF | Yes |
| BeneficiaryAccountNo | The bank account number of the beneficiary collecting the funds in the pay-out country | 65165156228733 PK42UNIL0109000 | On Bank Account |
| BranchCode / BeneficiaryBranchCode | The branch code of the bank where the beneficiary will be collecting the funds | BD030109 1073 | Yes |
| BeneficiaryBranchName | The branch code of the bank where the beneficiary will be collecting the funds | Head Office Kerela | On Bank Account if needed by bankroute |
| BeneficiaryAddress | The address where the beneficiary resides | 123 Short Street | Yes |
| SenderFirstName | The first name of the customer initiating the transaction | Minimum = 4 Characters Maximum = 45 Characters | Yes |
| SenderLastName | The last name of the customer initiating the transaction | Minimum = 4 Characters Maximum = 40 Characters | Yes |
| SenderIdCountryISOCode | The ISO 3 code of the customer (Remitters) Country | ZAF, GBR, ARE, KWT. etc | Yes |
| SenderMSISDN | The contact number of the customer initiating the transaction | Valid Number between 8 & 22 digits | Yes |
| SenderAddress | The address of the customer initiating the transaction | 1234 Test Road | Yes |
| SenderAddressStreet | The street where the customer initiating the transaction resides | 69 Baker Street, 124 Pluto Road, | Yes |
| SenderProvinceState | The State/Province of the customer initiating the transaction | OxfordShire Cape Town | Yes |
| SenderCountryCode | The ISO 2 country code of the customer initiating the transaction | ZA PK BD Etc. | Yes |
| SenderAddressCity | The city where the customer initiating the transaction resides | Johannesburg London | Yes |
| SenderAddressZIP | The zip code where the customer initiating the transaction resides | NW1 3AU | Yes |
| SenderNationalityCountryISOCode | The ISO 3 code of the customers nationality | ZAF GBR | Yes |
| SenderAddressCountry | The ISO3 country code where the customer initiating the transaction resides | IND UAE PAK | Yes |
| SenderCountry | The ISO 3 country code of the customer initiating the transaction | ZAF GBR | Yes |
| SenderCurrency | The Currency code of the sender | ZAR BBP | Yes |
| SenderGender | The Gender of the customer initiating the transaction | Male Female | Optional |
| Suburb | The Suburb of the customer initiating the transaction | London Johannesburg | Yes |
| StreetNo | The Street Number of the customer initiating the transaction | 69 | Yes |
| BuildingNo | The Building Number of the customer initiating the transaction | 78 01 | Yes |
| SenderId | The Identification number of the customer | 7901014908082 A123 HB587 | Yes |
| CustomerDateOfBirth | Customer Date of Birth | 1975-05-05 | Date Format |
| CustomerIdExpiryDate | The date when the customers ID will expire | 2022-01-31 | Yes |
| CustomerNationalityCode | The nationality code of the customer initiating the transaction | ZA PK BD Etc. | Yes |
| CustomerIDType | The ID type of the customer | 53 for customers with ID document 3 for customers with Passports or Asylums | Yes |
| CustomerAddressCity | The city where the customer resides | Centurion London | Yes |
| CustomerIdIssuedAt | The country where the ID was issued | ZA PK BD | Yes |
| IdType | Sender Id Type | 0 = Id Document 53 = Passport | Yes |
| PayoutCountry | The country code where the recipient will be collecting the funds | ZA PK BD Etc. | Yes |
| RoutingCode | The route to the pay-out partner given to agent | DCM001 | Yes |
| BankRoute | The bank route to the pay-out partners’ bank where the recipient will be collecting the funds | JANA HPT02 HPKB | Yes |
| SubAgent | The name of the originating money transfer operator | Originating Bank | Aggregators Only |
URL for Post Transaction:
QA : https://dcmtest.nvizible.co.za/api/postTransaction
Production : https://dcm.daytonacap.com/v2/api/postTransaction
URL for Retry Transaction:
QA : https://dcmtest.nvizible.co.za/api/retry
Production : https://dcm.daytonacap.com/v2/api/retry
Agent CheckStatus
Example request
curl --location --request POST 'https://dcmtest.nvizible.co.za/api/checkStatus' \
--header 'Authorization: Basic encodedUserPass' \
--header 'Content-Type: application/json' \
--data-raw '{
"DcmRequest": [
{
"ReferenceNo": "11422xxxxxxxxxxx",
"DCode": "00001786794636911470",
"RoutingCode": "DCM001",
"BankRoute": "STBL",
"DcmLogin": {
"userId": "HEADOFFICE"
}
}
]
}'
Example response
{
"DcmResponse": {
"responseCode": "206",
"responseMessage": " Sent to Partner. Awaiting Confirmation",
"payoutPartnerRef": "HPY000001061",
"DCode": "00001786794636911470",
"payOutPartnerRefName": "PIN",
"payInPartnerRef": "11422xxxxxx"
}
}
The checkStatus endpoint is used to check the status of the transaction, after doing a PostTransaction call. The check status method will return the current status of the transaction within the DCM system, or will return the status of the transaction with the pay-out partner’s system.
| Parameter Name | Explanation | Valid Fields | Mandatory |
|---|---|---|---|
| ReferenceNo | This is the Agents internal reference number | Agents reference number should be between 14 & 20 characters | Yes |
| RoutingCode | The route to the pay-out partner given to agent | DCM001 | Yes |
| BankRoute | The bank route to the pay-out partners’ bank where the recipient will be collecting the funds | JANA HPT02 HPKB | Yes |
| DCode | DCM’s internal reference number to keep track of the transaction | 00001675199527373774 | Yes |
URL for Check Status:
QA : https://dcmtest.nvizible.co.za/api/checkStatus
Production : https://dcm.daytonacap.com/v2/api/checkStatus
Agent CancelTransaction
Please note that Cancellation will be a manual process unless advised by DCM Team, please liaise with the DCM support team.
Agent CheckAgentBalance
Example request
curl --location --request GET 'https://dcmtest.nvizible.co.za/api/checkAgentBalance' \
--header 'Authorization: Basic encodedUserPass' \
--header 'Content-Type: application/json' \
--data-raw '{
"DcmRequest": [
{
"DcmLogin": {
"userId": "*********"
}
}
]
}'
Example response
{
"DcmResponse": {
"responseCode": "200",
"responseMessage": "Success",
"payoutPartnerRef": "",
"DCode": "",
"localCurrency": "ZAR",
"countryCode": "ZA",
"foreignBalance": "14867.150000000000",
"usdBalance": "1000.000000000000",
"payOutPartnerRefName": "",
"payInPartnerRef": ""
}
}
The checkAgentBalance endpoint can be called by the Agent at any interval, usually every 3 hours, to check the balance of the Agent’s account with DCM in USD and the equivalent balance in the Agent’s local currency.
URL for checkAgentBalance:
QA : https://dcmtest.nvizible.co.za/api/checkAgentBalance
Production : https://dcm.daytonacap.com/v2/api/checkAgentBalance
Agent GetAgentRates
Get Agent Rates - Example request
curl --location --request GET 'https://dcmtest.nvizible.co.za/api/getagentrates' \
--header 'Authorization: Basic encodedUserPass'
Get Agent Rates - Example response
{
"responseCode": 200,
"DcmResponse": [
{
"Currency": "XOF",
"Rate": 429
},
{
"Currency": "USD",
"Rate": 1
},
{
"Currency": "EUR",
"Rate": 1.187
}
]
}
The getAgentRates endpoint can be called by the Agent at any interval, this method is to check the current rate of the destination currency with DCM in USD. We recommend checking the current rate as per agreement with DCM Team.
URL for getAgentRate:
QA : https://dcmtest.nvizible.co.za/api/getagentrates
Production : https://dcm.daytonacap.com/v2/api/getagentrates
Agent GetAgentRates V3
Get Agent Rates v3 - Example request
curl --location --request GET 'https://dcmtest.nvizible.co.za/api/getagentratesv3'
--header 'Authorization: Basic encodedUserPass'
Get Agent Rates v3 - Example response
{
"responseCode": 200,
"DcmResponse": [
{
"BankRates": {
"BankAccount": [
{
"MT12": 86.598
}
],
"Mobile Wallet": [],
"COTC": [
{
"JANA": 85.768
}
]
},
"Currency": "BDT",
"Rate": 84.051
}
]
}
The getAgentRates version 3 endpoint can be called by the Agent at any interval, this method is to check the current rate of the destination currency and the current rate of the bank route with DCM, in USD. We recommend checking the current rate as per agreement with DCM Team.
URL for getAgentRateV3:
QA : https://dcmtest.nvizible.co.za/api/getagentratesv3
Production : https://dcm.daytonacap.com/v2/api/getagentratesv3
Agent GetAgentBanks
Get Agent Banks - Example request
curl --location --request GET 'https://dcmtest.nvizible.co.za/api/getAgentBanks' \
--header 'Authorization: Basic encodedUserPass' \
--header 'Content-Type: application/json' \
--data-raw '{
"DcmRequest": [
{
"DcmLogin": {
"userId": "*********"
}
}
]
}'
Get Agent Banks - Example response
{
"responseCode": "200",
"DcmResponse": {
"FromDate": {
"date": "2016-07-29 15:49:52.000000",
"timezone_type": 3,
"timezone": "Africa/Johannesburg"
},
"Updated": [
{
"BankName": "Janata Bank",
"BankRoute": "JANA",
"BankType": "COTC",
"AllowsQuote": false,
"bankBranches": [
{
"BranchName": null,
"BranchCode": null,
"Country": "BANGLADESH",
"Description": null,
"BankRoute": "JANA"
}
]
},
{
"BankName": "Brac Bank",
"BankRoute": "MT12",
"BankType": "COTC",
"AllowsQuote": true,
"bankBranches": [
{
"BranchName": "HEAD OFFICE",
"BranchCode": "BD010001",
"Country": "BANGLADESH",
"Description": "Use UAT file for beneficiary details",
"BankRoute": "MT12"
},
{
"BranchName": "TEJGAON DHAKA",
"BranchCode": "BD0301029",
"Country": "BANGLADESH",
"Description": "Use UAT file for beneficiary details",
"BankRoute": "MT12"
}
]
},
{
"BankName": "Capital Bank Botswana",
"BankRoute": "CBBP",
"BankType": "COTC",
"AllowsQuote": false,
"bankBranches": [
{
"BranchName": null,
"BranchCode": null,
"Country": "BOTSWANA",
"Description": null,
"BankRoute": "CBBP"
}
]
},
{
"Disabled": [
{
"BankName": "Post Office Savings Bank",
"BankRoute": "MT37",
"BankType": "BankAccount",
"AllowsQuote": true,
"bankBranches": [
{
"BranchName": "ALL BRANCHES",
"BranchCode": "081",
"Country": "SINGAPORE",
"Description": "Use UAT file for beneficiary details",
"BankRoute": "MT37"
}
]
}
]
}
]
}
}
The getAgentBanks endpoint can be called by the Agent, this method is to check the current banks with corridors that DCM offers to the Agent. The getBanks call will provide the agent with different responses when doing the call
Initial Call – the initial call will result in getting all of the banks DCM has to offer the agent, The agent will need to store the list of banks on their system after the first call as the next calls will include the initial list
Any calls after the initial getBanks call will result in either an updated bank list or disabled bank list which the agent will need to update on their side once called if any data has changed.
The updated and disable keys will always remain in the response, even if the list is blank or with data
The Bank response will include the following for each bank:
- BankName
- BankRoute
- BankType
- AllowsQuote
Each bank that has a branch/branches associated with it will include the following:
- BranchName
- BranchCode
- Country
- BankRoute
- Description (A brief comment on the branch if needed)
URL for getAgentBanks
QA : https://dcmtest.nvizible.co.za/api/getAgentBanks
Production : https://dcm.daytonacap.com/v2/api/getAgentBanks
Quote & Pay
The Quote and Pay endpoint can be called by the Agent at any interval, this method is to check the current rate of the destination currency with DCM in USD. We recommend to check the current rate as per agreement with DCM Team.
QA : https://dcmtest.nvizible.co.za/api/postTransaction
Production : https://dcm.daytonacap.com/v2/api/postTransaction
Payload parameters
The payload parameters for the get quote function is the same as the post transaction and cancel transaction payload, The Agent will need to pass one additional parameter in the payload called SecondaryAction
Get Quote
Get Quote - Example payload
{
"DcmRequest": [
{
"PayoutType": "COTC",
"SecondaryAction": "GetQuote",
"ReferenceNo": "Movee100000532",
"ForeignCurrency": "BDT",
"ForeignAmount": "1200.89",
"RemitPurpose": "Family",
"BeneficiaryFirstName": "Bruce",
"BeneficiaryLastName": "Banner",
"BeneficiaryMSISDN": "8801758724781",
"BeneficiaryNationalityCountryISOCode": "BGD",
"BeneficiaryBranchCode": "PPIBDANY00",
"BeneficiaryBranchName": "Head Office",
"BeneficiaryAddress": "Bangladesh",
"SenderFirstName": "Mickey",
"SenderLastName": "Mouse",
"SenderMSISDN": "44835578009",
"SenderAddress": "United Kingdom",
"SenderAddressStreet": "Aurora Street",
"SenderCountryCode": "GB",
"SenderAddressCity": "London",
"SenderNationalityCountryISOCode": "GBR",
"SenderAddressCountry": "United Kingdom",
"SenderCurrency": "GBP",
"SenderCountry": "GBR",
"SenderCity": "London",
"SenderAddressZIP": "tH4 5BX",
"SenderGender": "M",
"SenderProvinceState": "Oxfordshire",
"Suburb": "London",
"StreetNo": "69",
"BuildingNo": "69",
"SenderIdCountryISOCode": "GBR",
"SenderId": "9307068907098",
"CustomerDateOfBirth": "1990-01-08",
"CustomerIdExpiryDate": "2022-10-10",
"CustomerNationalityCode": "GB",
"CustomerIdIssueDate": "1995-05-05",
"CustomerIDType": "53",
"CustomerAddressCity": "London",
"CustomerIdIssuedAt": "GB",
"CustomerAddressCountryCode": "GB",
"IdType": "2",
"PayoutCountry": "BD",
"BranchCode": "PPIBDANY00",
"BranchName": "Head Office",
"AccountTtile": "Janata Bank",
"RoutingCode": "DCM001",
"BankRoute": "JANA",
"SubAgent": "Originating Bank",
"DcmLogin": {
"userId": "{{AgentUserId}}"
}
}
]
}
Get Quote - Example Response
{
"DcmResponse": {
"responseCode": "200",
"responseMessage": "Success",
"payoutPartnerRef": "1900016055",
"DCode": "GetQuote_TRANSACTION",
"payOutPartnerRefName": "",
"payInPartnerRef": "11422000000056"
}
}
The get quote function is when an agent creates a quote for the first time. The quote is based off a specific list of banks that allow the quote function. The list will be provided to the agent via an excel list or the get banks call.
When doing a quote function you will need to insert the parameter SecondaryAction: GetQuote in the post transaction method.
Confirm Quote
Confirm Quote - Example payload
{
"DcmRequest": [
{
"PayoutType": "COTC",
"SecondaryAction": "confirmQuote",
"ReferenceNo": "Movee100000532",
"ForeignCurrency": "BDT",
"ForeignAmount": "1200.89",
"RemitPurpose": "Family",
"BeneficiaryFirstName": "Bruce",
"BeneficiaryLastName": "Banner",
"BeneficiaryMSISDN": "8801758724781",
"BeneficiaryNationalityCountryISOCode": "BGD",
"BeneficiaryBranchCode": "PPIBDANY00",
"BeneficiaryBranchName": "Head Office",
"BeneficiaryAddress": "Bangladesh",
"SenderFirstName": "Mickey",
"SenderLastName": "Mouse",
"SenderMSISDN": "44835578009",
"SenderAddress": "United Kingdom",
"SenderAddressStreet": "Aurora Street",
"SenderCountryCode": "GB",
"SenderAddressCity": "London",
"SenderNationalityCountryISOCode": "GBR",
"SenderAddressCountry": "United Kingdom",
"SenderCurrency": "GBP",
"SenderCountry": "GBR",
"SenderCity": "London",
"SenderAddressZIP": "tH4 5BX",
"SenderGender": "M",
"SenderProvinceState": "Oxfordshire",
"Suburb": "London",
"StreetNo": "69",
"BuildingNo": "69",
"SenderIdCountryISOCode": "GBR",
"SenderId": "9307068907098",
"CustomerDateOfBirth": "1990-01-08",
"CustomerIdExpiryDate": "2022-10-10",
"CustomerNationalityCode": "GB",
"CustomerIdIssueDate": "1995-05-05",
"CustomerIDType": "53",
"CustomerAddressCity": "London",
"CustomerIdIssuedAt": "GB",
"CustomerAddressCountryCode": "GB",
"IdType": "2",
"PayoutCountry": "BD",
"BranchCode": "PPIBDANY00",
"BranchName": "Head Office",
"AccountTtile": "Janata Bank",
"RoutingCode": "DCM001",
"BankRoute": "JANA",
"SubAgent": "Originating Bank",
"DcmLogin": {
"userId": "{{AgentUserId}}"
}
}
]
}
Confirm Quote - Example response
{
"DcmResponse": {
"responseCode": "200",
"responseMessage": " Success ",
"payoutPartnerRef": "11422000000056",
"DCode": "000213xxxxxxxxxx",
"DcmTransactionFee":"0.00",
"Rate":"",
"payOutPartnerRefName": "",
"payInPartnerRef": ""
}
}
The confirm quote function is used for the confirmation of a quote that has been created.
You will need to insert the parameter SecondaryAction: ConfirmQuote in the post transaction method as with the payload example payload.
Note: The quote is valid for 6 hours after creation.
Cancel Quote
The cancel quote function is used to cancel a quote that has been created.
You will need to insert the parameter “SecondaryAction: CancelQuote” in the cancel transaction method with the payload
"SecondaryAction": "CancelQuote",.
Cancel Quote - Example payload
{
"DcmRequest": [
{
"SecondaryAction": "CancelQuote",
"ReferenceNo": "11422000000056",
"RoutingCode": "DCM001",
"DcmLogin": {
"userId": " HP0001"
}
}
]
}
Cancel Quote - Example response
{
"DcmResponse": {
"responseCode": "417",
"responseMessage": "Transaction Cancelled",
"payoutPartnerRef": "1900016055",
"DCode": "CancelQuote_TRANSACTION",
"payOutPartnerRefName": "",
"payInPartnerRef": "11422000000056"
}
}
Quote & Pay Notes
- Quotes that have been confirmed cannot be cancelled through the cancel quote function, It must go through the normal transaction cancellation process.
- All quotes must be confirmed within 6 hours after quote creation.
- Agents will receive an error if they confirm a quote after the 6 hour expiry.
- Use the correct “SecondaryAction” for each function needed
Response codes
| Response Code | Description |
|---|---|
200 |
Sent to partner. Transaction Confirmed |
206 |
Sent to partner. Awaiting confirmation |
207 |
Transaction is pending cancellation |
208 |
Transaction created successfully. Credit limit Low |
400 |
Sent to partner. Invalid Request |
412 |
Sent to partner. Transaction Failed |
417 |
Transaction cancelled |
449 |
Transaction not processed, requires retry |
500 |
Internal Server Error |
501 |
Not Implemented |
Response code explanation
200 - When an Agent receives a 200 response code, the request
sent to DCM was then handled successfully, and the following
types are true:
On the PostTransaction or Retry request: The transaction was successfully processed by the pay-out partner, and the Agent should receive a DCode along with DCM’s service fees, and a pay-out partner reference. No further action will be needed by the agent thereafter.
On the CheckStatus request: The transaction was previously sent to the pay-out partner successfully.
On a CancelTransaction request: The transaction was successfully cancelled at the pay-out partner’s side, resulting in the transaction never being able to be paid out from here on after.
On a checkAgentBalance request: The request was handled successfully, meaning the rest of the result should contain the Agent’s balance in USD and in Local currency.
On a GetAgentRates request: The request was handled successfully, meaning the rest of the result should contain the Rates in USD and in currency needed in real time.
On a Check Title request: The request was handled successfully, meaning the account number does exist on the partner's system.
206 - When an Agent receives a 206 response code, the request was sent
to DCM but is pending processing by the pay-out partner. The next
step to be taken is to send a checkStatus request to DCM, which will
return the status of the transaction.
207 - When an Agent receives a 207 response code, the cancel request was sent to
DCM and is waiting for the response to check if the transaction can be
cancelled
Send a checkStatus request to check if the transaction has been cancelled or
not
Check with DCM support team on status of pending cancellations.
400 and 412 - When an Agent receives a 400 or 412 response code, the
request was sent to DCM but failed with either the DCM system, or
the pay-out partner. The 400/412-response error code is a final state
error. The Transaction is unable to be paid out in the foreign country
and no further action can be taken on the transaction.
417 - This response code indicates that the transaction has already been
cancelled on the DCM system. This error code is also a final error
state as no action can be taken on the transaction. The transaction
can no longer be re-initiated, and the transaction value has already
been credited back into the Agent’s ledger with DCM.
449 - When an Agent receives a 449 response code on a check status request,
the transaction has not been processed and the Retry functionality should
be used on the transaction.
500 - When an Agent receives a 500 response code, it indicates that the
DCM server failed to process the transaction, and an Agent should
send a checkStatus request to see what status the transaction is
currently in.
501 - When an Agent receives a 501 response code, it indicates that a
method has not been implemented on the DCM server, and an Agent
should check the Status of the transaction to see what status the
transaction is currently in.
Bank Routes & Corridors
The DCM hub provides agents with multiple corridors and pay-out points based on the agreed signed contract with DCM.
When integrating with the system the agent should take note that DCM has multiple endpoints and integrations.
Each endpoint is defined using a BankRoute, which is very important as it allows us to know which endpoint the transaction should route through.
The different BankRoutes and corridors will be provided by the DCM team in an excel file.
The Bank list provided will enable the agent to see 3 tabs on the Excel sheet.
| Country Break Down | List of all countries available on DCM |
| Bank Codes | List of Banks, Countries, BankRoutes and Payout Types |
| Consolidated Branches | List of Banks, Countries, BankRoutes, Branch Name, Branch Code and Payout Types for all endpoints on DCM |
This is the list that must be imported into your system
When integrating with the DCM please take note of the comments or notes on the excel file as you will see that some BankRoutes would require more specific or different details than the others.
Examples:
- India corridor for Bank Account would require “IFSC code” in the Branch code field
- Some Nigerian BankRoutes would require the SenderMSISDN and BeneficaryMSISDN to have a prefix of “00” in front of the country code (002348764572)
- Some Routes will require branch name and branch code, others will require either or, and some will require no branch name or branch code.
- Check production file to see final details
Payout Types
DCM has various payout type endpoints. These types of payments will need specific detail when sending to each payout type.
Below is a guide of the mandatory fields for each payout type:
Bank Account (bankaccount)
- Account Number
- Branch Name (If Bankroute has a branch name associated to it)
- Branch Code (If Bankroute has a branch code associated to it)
- Account Title
- Beneficiary Mobile Number
- Sender Mobile Number
Cash Pick Up (COTC)
- Beneficiary Mobile Number
- Beneficiary First Name
- Beneficiary Last Name
- Sender Mobile Number
Mobile Wallet ( Mobile Wallet)
- Beneficiary Name
- Beneficiary Mobile Number
- Ensure the mobile number is correct
- Ensure the number is registered to network you are sending to
Value added services/ Utility Bills (VAS)
- Account Number (The utility bill number that you want to pay)
- Foreign Amount
- Foreign amount must be exact to the bill that needs to be paid
- If the bill to be paid is in dollars, the agent will need to convert their rate to the exact amount to be paid in dollars.
Prepaid Top up/ Airtime (Prepaid)
- Beneficiary Mobile Number (The number that you want to give airtime to)
- Branch Code (Branch code that is associated to the bank route for top up)
- Branch Name (Branch code that is associated to the bank route for top up)
- Foreign Amount
- Foreign amount must be exact to the mobile network that needs to be paid either in the foreign amount or in dollars.
- If the top up to be paid is in dollars, the agent will need to convert their rate to the exact top amount to be paid in dollars.
Payload parameters
Both inwards and outwards
| Parameter Name | Validation Request | Explanation | Valid Fields | Mandatory |
|---|---|---|---|---|
| BeneficiaryAccountNo | On PayoutType “BankAccount” Required | The bank account number of the beneficiary collecting the funds in the pay-out country | 65165156228733 PK42UNIL0109000 | On Bank Account |
| BeneficiaryAddress | Post Retry Cancel |
The address where the beneficiary resides | 123 Short Street | Yes |
| BeneficiaryFirstName | Post Retry Cancel |
The first name of the recipient collecting the funds in the pay-out country | Minimum = 4 Characters Maximum = 45 Characters | Yes |
| BeneficiaryLastName | Post Retry Cancel |
The last name of the recipient collecting the funds in the pay-out country | Minimum = 4 Characters Maximum = 40 Characters | Yes |
| BeneficiaryMSISDN | Post Retry Cancel |
The contact number of the recipient collecting the funds in the pay-out country | Valid Number between 8 & 22 digits | Yes |
| BeneficiaryNationalityCountryISOCode | Post Retry Cancel |
The ISO3 country code of the beneficiary | ZAF | Yes |
| CustomerDateOfBirth | Post Retry Cancel |
Customer Date of Birth | 1975-05-05 | Date Format |
| ForeignAmount | Post Retry Cancel |
The amount requested to be paid out in foreign currency | 2500.00 | Yes |
| ForeignCurrency | Post Retry Cancel |
The pay-out country’s’ currency in ISO3 format | ZAR | Yes |
| PayoutType | Post Retry Cancel |
The type of pay-out that will occur | BankAccount COTC Mobile Wallet | Yes |
| ReferenceNo | Post Retry Cancel |
This is the Agents internal reference number | Agents reference number should be between 14 & 20 characters | Yes |
| RemitPurpose | Post Retry Cancel |
The purpose of the transaction being created | Gift Migrant worker remittances (excluding compensation) Adjustments Reversals/Refund ETC. | Yes |
| SenderAddress | Post Retry Cancel |
The address of the customer initiating the transaction | 1234 Test Road | Yes |
| SenderAddressCountry | Post Retry Cancel |
The ISO3 country code where the customer initiating the transaction resides | IND UAE PAK | Yes |
| SenderFirstName | Post Retry Cancel |
The first name of the customer initiating the transaction | Minimum = 4 Characters Maximum = 45 Characters | Yes |
| SenderGender | Post Retry Cancel |
The Gender of the customer initiating the transaction | Male Female | Optional |
| SenderLastName | Post Retry Cancel |
The last name of the customer initiating the transaction | Minimum = 4 Characters Maximum = 40 Characters | Yes |
| SenderMSISDN | Post Retry Cancel |
The contact number of the customer initiating the transaction | Valid Number between 8 & 22 digits | Yes |
| DCode | Retry Cancel |
DCM’s internal reference number to keep track of the transaction | 00001675199527373774 | Yes |
| PayoutCountry | Post Retry Cancel |
The country code where the recipient will be collecting the funds | ZA PK BD Etc. | Yes |
| RoutingCode | Post Retry Cancel Check Status All Requests required |
The route to the pay-out partner given to agent | DCM001 | Yes |
| BankRoute | Post Retry Cancel Check Status All Requests required |
The bank route to the pay-out partners’ bank where the recipient will be collecting the funds | JANA HPT02 HPKB | Yes |
| SubAgent | Post Retry Cancel |
The name of the originating money transfer operator | Originating Bank | Aggregators Only |
Specific to inwards
| Parameter Name | Validation Request | Explanation | Valid Fields | Mandatory |
|---|---|---|---|---|
| BeneficiaryBranchCode | On PayoutType “BankAccount” Required if given | The branch code of the bank where the beneficiary will be collecting the funds | BD030109 1073 | Yes |
| BeneficiaryEmail | Post Retry Cancel |
The email address of the of the beneficiary | abc@test.com | Optional |
| BeneficiaryGender | Post Retry Cancel |
The Gender of the beneficiary | Male Female | Optional |
| BeneficiaryId | Post Retry Cancel |
The Identification number of the beneficiary | 7901014908082 A123 HB587 | String Min 4 Max 50 |
| BeneficiaryIdType | Post Retry Cancel |
The Identification document type of the beneficiary | RSA ID | Yes |
| IdType | Post Retry Cancel |
Sender Id Type | 0 = Id Document 53 = Passport | Yes |
| SenderEmail | Post Retry Cancel |
The email address of the of the customer initiating the transaction | abc@test.com | Optional |
Specific to outwards
| Parameter Name | Validation Request | Explanation | Valid Fields | Mandatory |
|---|---|---|---|---|
| AccountTitle | On PayoutType “BankAccount” Required | The name of the bank account, if the pay-out type is bankaccount | John Snow | On Bank Account |
| BeneficiaryBranchName | On PayoutType “BankAccount ” Required if given | The branch code of the bank where the beneficiary will be collecting the funds | Head Office Kerela | On Bank Account if needed by bankroute |
| BranchCode BeneficiaryBranchCode | On PayoutType “BankAccount & prepaid” Required if given | The branch code of the bank where the beneficiary will be collecting the funds | BD0301029 1073 | On Bank Account and prepaid if needed by bankroute |
| BuildingNo | Post Retry Cancel |
The Building Number of the customer initiating the transaction | 78 01 | Yes |
| CustomerAddressCity | Post Retry Cancel |
The city where the customer resides | Centurion London | Yes |
| CustomerIdExpiryDate | Post Retry Cancel |
The date when the customers ID will expire | 2022-01-31 | Yes |
| CustomerIdIssueDate | Post Retry Cancel |
The date when the customers ID was issued | 1998-01-01 | Yes |
| CustomerIdIssuedAt | Post Retry Cancel |
The country where the ID was issued | ZA PK BD | Yes |
| CustomerIDType | Post Retry Cancel |
The ID type of the customer | 53 for customers with ID document 3 for customers with Passports or Asylums | Yes |
| CustomerNationalityCode | Post Retry Cancel |
The nationality code of the customer initiating the transaction | ZA PK BD Etc. | Yes |
| SenderAddressCity | Post Retry Cancel |
The city where the customer initiating the transaction resides | Johannesburg London | Yes |
| SenderAddressStreet | Post Retry Cancel |
The street where the customer initiating the transaction resides | 69 Baker Street, 124 Pluto Road, | Yes |
| SenderAddressZIP | Post Retry Cancel |
The zip code where the customer initiating the transaction resides | NW1 3AU | Yes |
| SenderCountry | Post Retry Cancel |
The ISO 3 country code of the customer initiating the transaction | ZAF GBR | Yes |
| SenderCountryCode | Post Retry Cancel |
The ISO 2 country code of the customer initiating the transaction | ZA PK BD Etc. | Yes |
| SenderCurrency | Post Retry Cancel Check Status |
The Currency code of the sender | ZAR BBP | Yes |
| SenderId | Post Retry Cancel |
The Identification number of the customer | 7901014908082 A123 HB587 | Yes |
| SenderNationalityCountryISOCode | Post Retry Cancel |
The ISO 3 code of the customers nationality | ZAF GBR | Yes |
| SenderProvinceState | Post Retry Cancel |
The State/Province of the customer initiating the transaction | OxfordShire Cape Town | Yes |
| StreetNo | Post Retry Cancel |
The Street Number of the customer initiating the transaction | 69 | Yes |
| Suburb | Post Retry Cancel |
The Suburb of the customer initiating the transaction | London Johannesburg | Yes |