Create C2C / C2B International Transfer
POST/v2/international-disbursement
An endpoint to create the international transfer C2C/C2B transaction.
Request
Header Parameters
Request content type application/x-www-form-urlencoded
Idempotency key. Please see more detail on Idempotent Request section
Request timestamp. The format will follow the ISO8601 format.
- application/x-www-form-urlencoded
Body
required
Id number.
ID expiration date using YYYY-MM-DD format.
Amount of money that wants to be disbursed to the beneficiary (in beneficiary currency). Maximum 2 decimal places, for Japan there can be no decimal. Must be within the minimum and maximum amount based on transaction currency.
Source country code using ISO 3166 (Alpha-3). Currently possible value is IDN
Source country code using ISO 3166 (Alpha-3). Currently possible value is IDN.
Possible values: [C2C, C2B]
Transaction type information.
Full name of the beneficiary
Account number of the beneficiary bank
ID of beneficiary bank
Name of beneficiary bank. Can be used for destination countries AUS and GBR
Email of beneficiary
A number used to identify a phone number internationally
Country code using ISO 3166 (Alpha-3) of beneficiary nationality
Province or state of the beneficiary
City of the beneficiary
Address of the beneficiary
Postal code of the beneficiary
Relationship of beneficiary
Source of funds
Purpose of remittance
Identifier of individual account involved in the international transaction
Identifier of specific bank during an international transaction
Digits of code which is used by British and Irish banks
Indian financial system code
Ach code of the beneficiary
Identifier of banks and branches across Australia
Identifier of banks and branches across Japan
Reference number of document related to the transaction
Registration number
Required for destination country China code.
The name of the user of the Money Transfer Company that act as a sender
Country code of the sender’s residence. Available value can be retrieved from country list.
City/country code of the sender’s place of birth. Use city code if the sender’s place of birth is in Indonesia, and country code if outside Indonesia. Available value can be retrieved from city/country list.
Sender’s date of birth with YYYY-MM-DD format
Sender’s address
Possible values: [nat_id, passport]
Sender’s ID type
Sender’s ID number
Possible values: [housewife, entrepreneur, private_employee, government_employee, foundation_board, indonesian_migrant_worker, company, others]
Sender’s job.
Sender’s email. Only accept one email.
Sender’s city.
Sender’s phone number. Start with country phone code.
Responses
- 200
- 401
- 422
Create International Disbursement response
- application/json; charset=UTF-8
- Schema
- Example (from schema)
Schema
beneficiary
object
sender
object
{
"id": 11,
"user_id": 12345,
"company_id": 123456,
"exchange_rate": 19000.55,
"fee": 88888,
"amount": 1000000,
"source_country": "IDN",
"destination_country": "GBR",
"beneficiary_amount": 52.63,
"beneficiary_currency_code": "GBP",
"status": "PENDING",
"timestamp": "2021-12-02 15:27:24",
"time_served": "(not set)",
"created_from": "API",
"receipt": "someurl.png",
"transaction_type": "C2C",
"idempotency_key": "idem-1",
"beneficiary": {
"id_number": "44943733088",
"id_expiration_date": "2022-11-29",
"full_name": "John Smith",
"bank_account_number": "1122333300",
"bank": "Allica Bank",
"email": "emial@email.com",
"msisdn": "09584008222",
"nationality": "IDN",
"country": "GBR",
"province": "United Kingdom",
"city": "Manchester",
"address": "Mosley St Manchester",
"postal_code": "M2",
"relationship": "SON",
"source_of_funds": "BUSINESS",
"remittance_purpose": "EDUCATION",
"iban": null,
"swift_bic_code": null,
"sort_code": "506967",
"ifs_code": null,
"bsb_number": null,
"branch_number": null,
"document_reference_number": null,
"registration_number": null
},
"sender": {
"name": "John Doe",
"place_of_birth": 100230,
"date_of_birth": "1963-12-01",
"address": "Some Address Street 123",
"identity_type": "nat_id",
"identity_number": "1234789012347890",
"country": 100252,
"job": "entrepreneur",
"email": "sender@mail.com",
"city": "Sender City",
"phone_number": "+628123456789\""
},
"reason": ""
}
Sample response when Your Flip api secret key value for Authorization is missing or invalid
- application/json; charset=UTF-8
- Schema
- Example (from schema)
Schema
{
"name": "Unauthorized",
"message": "Your request was made with invalid credentials.",
"status": 401
}
Sample error response
- application/json; charset=UTF-8
- Schema
- Example (from schema)
- Mising Required Fields
- Mising amount Field
- Mising source_country Field
- Missing destination_country field
- Missing beneficiary_full_name field
- Missing beneficiary_bank_account_number field
- Missing beneficiary_bank_id field
- Missing beneficiary_remittance_purpose field
- Missing beneficiary_beneficiary_relationship field
- Missing beneficiary_source_of_funds field
- Missing sender_address field
- Missing sender_identity_type field
- Missing sender_identity_number field
- Missing sender_job field
- Missing sender_email field
- Missing sender_city field
- Missing sender_phone_number field
Schema
Array [
]
errors
object[]
{
"code": "VALIDATION_ERROR",
"errors": [
{
"attribute": "source_country",
"code": 1001,
"message": "Source country cannot be empty"
}
]
}
{
"code": "VALIDATION_ERROR",
"errors": [
{
"attribute": "amount",
"code": 1001,
"message": "Amount cannot be emptyy"
},
{
"attribute": "source_country",
"code": 1001,
"message": "Source country cannot be empty"
},
{
"attribute": "destination_country",
"code": 1001,
"message": "Destination country cannot be empty"
},
{
"attribute": "beneficiary_full_name",
"code": 1001,
"message": "Beneficiary full name cannot be empty"
},
{
"attribute": "beneficiary_bank_account_number",
"code": 1001,
"message": "Beneficiary bank account number cannot be empty"
},
{
"attribute": "beneficiary_bank_id",
"code": 1001,
"message": "Beneficiary bank id cannot be empty"
},
{
"attribute": "beneficiary_remittance_purpose",
"code": 1001,
"message": "Beneficiary remittance purpose cannot be empty"
},
{
"attribute": "beneficiary_beneficiary_relationship",
"code": 1001,
"message": "Beneficiary beneficiary relationship cannot be empty"
},
{
"attribute": "beneficiary_source_of_funds",
"code": 1001,
"message": "Beneficiary source of funds cannot be empty"
},
{
"attribute": "sender_address",
"code": 1001,
"message": "Sender address cannot be empty"
},
{
"attribute": "sender_identity_type",
"code": 1001,
"message": "Sender identity type cannot be empty"
},
{
"attribute": "sender_identity_number",
"code": 1001,
"message": "Sender identity number cannot be empty"
},
{
"attribute": "sender_job",
"code": 1001,
"message": "Sender job cannot be empty"
},
{
"attribute": "sender_email",
"code": 1001,
"message": "Sender email cannot be empty"
},
{
"attribute": "sender_city",
"code": 1001,
"message": "Sender city cannot be empty"
},
{
"attribute": "sender_phone_number",
"code": 1001,
"message": "Sender phone number cannot be empty"
}
]
}
{
"code": "VALIDATION_ERROR",
"errors": [
{
"attribute": "type",
"code": 1001,
"message": "Amount cannot be empty"
}
]
}
{
"code": "VALIDATION_ERROR",
"errors": [
{
"attribute": "source_country",
"code": 1001,
"message": "Destination country cannot be empty"
}
]
}
{
"code": "VALIDATION_ERROR",
"errors": [
{
"attribute": "destination_country",
"code": 1001,
"message": "Destination country cannot be empty"
}
]
}
{
"code": "VALIDATION_ERROR",
"errors": [
{
"attribute": "beneficiary_full_name",
"code": 1001,
"message": "Beneficiary full name cannot be empty"
}
]
}
{
"code": "VALIDATION_ERROR",
"errors": [
{
"attribute": "beneficiary_bank_account_number",
"code": 1001,
"message": "Beneficiary bank account number cannot be empty"
}
]
}
{
"code": "VALIDATION_ERROR",
"errors": [
{
"attribute": "beneficiary_bank_id",
"code": 1001,
"message": "Beneficiary bank id cannot be empty"
}
]
}
{
"code": "VALIDATION_ERROR",
"errors": [
{
"attribute": "beneficiary_remittance_purpose",
"code": 1001,
"message": "Beneficiary remittance purpose cannot be empty"
}
]
}
{
"code": "VALIDATION_ERROR",
"errors": [
{
"attribute": "beneficiary_beneficiary_relationship",
"code": 1001,
"message": "Beneficiary beneficiary relationship cannot be empty"
}
]
}
{
"code": "VALIDATION_ERROR",
"errors": [
{
"attribute": "beneficiary_source_of_funds",
"code": 1001,
"message": "Beneficiary source of funds cannot be empty"
}
]
}
{
"code": "VALIDATION_ERROR",
"errors": [
{
"attribute": "sender_address",
"code": 1001,
"message": "Sender address cannot be empty"
}
]
}
{
"code": "VALIDATION_ERROR",
"errors": [
{
"attribute": "sender_identity_type",
"code": 1001,
"message": "Sender identity type cannot be empty"
}
]
}
{
"code": "VALIDATION_ERROR",
"errors": [
{
"attribute": "sender_identity_number",
"code": 1001,
"message": "Sender identity number cannot be empty"
}
]
}
{
"code": "VALIDATION_ERROR",
"errors": [
{
"attribute": "sender_job",
"code": 1001,
"message": "Sender job cannot be empty"
}
]
}
{
"code": "VALIDATION_ERROR",
"errors": [
{
"attribute": "sender_email",
"code": 1001,
"message": "Sender email cannot be empty"
}
]
}
{
"code": "VALIDATION_ERROR",
"errors": [
{
"attribute": "sender_city",
"code": 1001,
"message": "Sender city cannot be empty"
}
]
}
{
"code": "VALIDATION_ERROR",
"errors": [
{
"attribute": "sender_phone_number",
"code": 1001,
"message": "Sender phone number cannot be empty"
}
]
}
Callbacks
- POST createInternationalDisbursementCallback
POST/your-callback-url
International transfer callback will be sent to you if you transaction status is changed. Please make sure that you have set the International Transfer callback URL on the Flip for Business dashboard.
- application/x-www-form-urlencoded
Body
data
object
JSON array string with content exactly the same as the response of disbursement or bank account inquiry.
Flip’s transaction id
Your account user id in our system
Id of company
The country exchange rates to IDR
Transfer fee to the country
Transfer amount in IDR
Source country code using ISO 3166 (Alpha-3)
Destination country code using ISO 3166 (Alpha-3)
Amount to be received by beneficiary
Currency code of the beneficiary
Possible values: [PENDING, SUCCESSFUL, CANCELLED]
Transaction status
The time when the disbursement request was created. Time will be in GMT+7 with yyyy-mm-dd hh:mm:ss format
The time when the disbursement is finished
The channel of which the transaction was created.
URL of the transfer receipt
Possible values: [C2C, C2B, B2B, B2C]
Transaction type information
Idempotency key information
beneficiary
object
Id number
ID expiration date using YYYY-MM-DD format
Full name of the beneficiary
Account number of the beneficiary bank
Bank name of beneficiary bank
Email of beneficiary
A number used to identify a phone number internationally
Country code using ISO 3166 (Alpha-3) of beneficiary nationality
Country code using ISO 3166 (Alpha-3) of the beneficiary’s country
Province or state of the beneficiary
City of the beneficiary
Address of the beneficiary
Postal code of the beneficiary
Relationship of sender and beneficiary
Source of funds
Purpose of remittance
Identifier of individual account involved in the international transaction
Identifier of specific bank during an international transaction
Digits of code which is used by British and Irish banks
Indian financial system code
Identifier of banks and branches across Australia
Identifier of bank for Japan
Reference number of document related to the transaction
Registration number
sender
object
The name of the user of the Money Transfer Company that act as a sender
City/country code of the Sender’s place of birth
Sender’s date of birth
Sender’s address
Sender’s identity type
Sender’s identity number
Country code of the Sender’s country
Sender’s job
Sender’s email
Sender’s city
Sender’s phone number
Validation token to ensure that the callback is coming from our server. You can get your token in your Flip for Business dashboard.
Callbacks Responses
- 200
URL must return a 200 HTTP Status Code. If the URL returns another HTTP Status Code or if our system doesn’t receive any response within 30 seconds (timeout), our system will retry the request 5 times, with a 2-minute interval for the transaction callback (Money Transfer, Accept Payment, International Transfer).