NAV
shell

Introduction

Aricos is middleware that is make transfer transaction easy, fast, secure, reliable and accessible from all around the World. We provide simple APIs which you can use to send money to all Post Office (Kantor POS) in Indonesia quickly and securely.

Aricos is organized around REST. We use built-in HTTP features and HTTP verbs and we return all responses in JSON.

Cash Pickup Remittance Overview

Use the Remittance API to transfer funds instantly to Post Office (Kantor POS) in Indonesia at any time, including holidays and weekends. Due to restrictions from the agent, we’re unable to disburse when the agent channel are offline or when they fail.

The remittance flow is as follows:

  1. Prefund your Aricos account balance

  2. Create a customer which represents the sender, and a customer which represents the recipient of the remittance. You’ll get an id for each

  3. Create a remittance, attaching ids of the sender and recipient

  4. We run this remittance through our risk-scoring system. If necessary, our compliance team will contact you for additional verification of information

  5. We process the remittance and return a callback with the status of the remittance. You may also query the status of a remittance anytime via the Get Remittance API

Getting Started

Set Up Your Account

To use our Cash Pickup Remittance APIs, register for an Aricos account by contacting your account manager or our support team.

You can start testing our APIs immediately in development environment. When you are ready to process live transactions, contact your account manager to go live.

Retrieve Your API Account

Before you access all our features, you have to register your account to access all our API Feature. Our support team will give you the information of your account to login into our API.

To successfully authenticate with Aricos's API, you must append a colon and Base 64 encode the API key. All API requests should be made over HTTPS instead of HTTP (all calls made over plain HTTP will fail).

You can access our end-point url to:

Info Url
Development https://dev-cashpickup.aricos.co.id
Production https://cashpickup.aricos.co.id

Start Testing!

You may test our APIs by sending requests in the development environment--You will automatically get IDR balances in your development account balance for testing. Requests made in the development environment will not hit the agent networks and will not cost you anything.

Postman Collection

The easiest way to get started using our API is to use our Postman Collection. Postman is a free client application that enables you to make calls to APIs easily. To make integrating with our APIs easier, we've created a Postman Collection of our endpoints so that you can test our APIs more easily.

The following is an outline of actions to get started with Postman.

  1. Install Postman.

  2. Download our Postman collection.

  3. Open Postman and Import the Aricos API Postman Collection.

  4. Set up the collection’s Authorization header.

    a. Under the Authorization tab of each folder, the default authorization type is set to “Inherit auth from parent”. The “Inherit auth from parent” setting indicates that every request in the folder by default uses the authorization type from the parent.

    b. Edit the Aricos API collection.

    c. Under “Authorization”, paste your secret API key into the Username. Use your Development Key to test in the development environment, and your Live Key to send live transactions.

    d. Click Update.

    e. This authorization key will be automatically used for each request in the collection.

  5. Try getting your balance.

    a. Click on the Balances folder and click Get Balances.

    b. Hit the blue Send button.

    c. In the response area, you should get your latest cash balance.

  6. If you can query your balance successfully, you’re all set up! Feel free to explore our other APIs by selecting it in the collection and launching it.

Account

Account Register

All information about your account and password will be provide by our support team by email. So if you're not getting any information about your account for development testing or for go live, please let us know.

Account Login

POST https://dev-cashpickup.aricos.co.id/oauth/token

You have to login to get token access before you do a request to our APIs. You have to keep every token from our request response every time you want to access another request.

Login Request

Login Example Request:

curl --location --request POST 'https://dev-cashpickup.aricos.co.id/oauth/token' \

--header 'Accept: application/json' \

--form 'grant_type="password"' \

--form 'password="password"' \

--form 'username="user@mail.com"' \

--form 'client_id="94c92649-ae06-4f6e-b03b-b5a4327d0a50"' \

--form 'client_secret="te4hNdxm9BM8eRcG4AQMDes4GLQt0ujPbS5d8CHR"'

Make sure to replace username and password with your account credential.

Parameter Description
grant_type Grant Type To Generate Token And Fix Value
username The User Account That Provided By Our Team
password The User Password That Provided By Our Team
client_id The Client ID That Provided By Our Team
client_secret The Client Secret That Provided By Our Team

Login Response

Login Example Response:

{

"token_type": "Bearer",

"expires_in": 31536000,

"access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiI5NGM5MjY0OS1hZTA2LTRmNmUtYjAzYi1iNWE0MzI3ZDBhNDgiLCJqdGkiOiI1NmU3ZTUyZGQ3ZGNmOTBiM2Q3MDFkY2M5MTVmYzFmYWU2YWFjMjAwNjg1Mjc0ZmI2MThiZjY0ZGZhZmVlY2M1MTEwOGI1OTg4YzIwNTkwNiIsImlhdCI6MTY0MjA2NTU3OS4wNTU1ODksIm5iZiI6MTY0MjA2NTU3OS4wNTU1OTgsImV4cCI6MTY3MzYwMTU3OS4wMjM4NTUsInN1YiI6ImFlMzYwZjk2LWNkMjYtNGVlYy1hNzFlLTk1MTZkN2YzZjUwYSIsInNjb3BlcyI6W119.rgeLHfR97_ntN3lwdfUbM2XqxMGQ8jHXjYYvaXGpsp-JVc9MFPVv-_x9mNE_9JguPV1eyOVrCO2Rsf6RT9VRpLYShZ1bDt4ZFCkJ6GC_iE7rL8GIzdNxXCOOuCmDT8u1L_V6y81f9jdMYfLqtDgU54EFoPTZbIRD9-NPshtzM3bkGLT8PomKdJw5_-fUnuYIsZ3alh8j8hdZ2Yl1nthiBoF4vMBKjRG3SJbex3Rb08Lyy11J6lT26dDcLMMKTHqBIYarfwHdZtJs-qHJxg1Ne142y4L4g_jcAjQ-eVR7EcGWaMDN-3yqqEyX1tlcYkd-d4FcFYxWv6kuZ7y8LuXMUtYgXWlrb8ntcpEvviESVTmK9RN3l26Tmz_-QPVaJMdGJ0tljiS29LIm13kabps0Uav8AR0C3dA7S7XZm2FlaKwBtBunOguO4yIvY4dHuEkFuKcCr5GHFdFgsGWDX6LjBuYxRL9KUaas_gTHvMlMGeAaM7n5w55F44SAWNgZyvvEGciwMW0uOYHr9a1RNUiBafmAsDFpoO7FUu-lrUom2VLzfXWuIZF8sOV4rJRdas5vDwOZTBcMSt7fSUtpR2HdOzAw0MR5hsMYWCV9TjeWTiRGgBXZvE1j6LuD-22idsaInVFrCENyO9jsmrSs7GPLHlkYXDV0-wmZCDoOP1nnQk4",

"refresh_token": "def50200325bd991fab946343ce6c945a498696fce7d15c2b70c8354e5266e595f2853ffdfcd8b918b6c3eba922bd870f1f493bf3803611bd7329512a48d8448524f96a7ec85c984676c7a3856ef5e67cd3cd02fc58235e728cbfd656c43c261a153122804791ba5a31588f3ecbd03b79996aa5b688a3f053fb0b929acba44164cd5df70b8068a871e3fb746f59032d79c81187e4e5c59eb029b562f62f142ab83dbd4b462dd904a44ed6195c89be2996a79702a27b6a5468a1b2cb48abe52b160c243f3790c99cb67dd85e60d1c0e809b22129cbb9fd2f5f36d7468d78d38d77ae8167c49ba8db12c8fc55b94b92cee0d6b85e64a32c575d43953683403a068845bdf06ae6277b0013999d286fe28216726ab85170ab726c7bdb8c4a5fec361a651ec4e984c1ba262b2d755a6206380c6cd5b2f38744a89c8205ceea0760059ac47d67ffc1d358b31fe9516373d652afa396ca9fde9c4f912c0b0bd790a284cbbd5885ffecb88567cd2949b85d0d6853798d63c58812dabeeb59767f81e4a2da0b0b888e3f908fd8ce148eec28ed1f12f889b3798dbf0772486346dced260e0f32d5ba8f1380279d6"

}
Parameter Description
expires_in User Validity Period Time To Access Our API
access_token Bearer Token That You Have To Use Everytime When You Want To Access Our APIs

Balance

Prefund Your Balance

Your balance refers to stored value in your Aricos account which can be sent out in remittances or withdrawn. Before you do any remittances, you will first have to add to your account balance ("prefund"). You can do this by transferring funds to Aricos's cash pickup accounts. You can will get information about our cash pickup from our team so you can do prefund. After you have transferred the funds, please save the proof of transfer.

If you have prefunding to your account, the balance should be detected and updated in your account in 15-30 minutes. If prefunding failed or have technical issues, please contact our support team with the proof of transfer to complete the prefund.

Get Balance

GET https://dev-cashpickup.aricos.co.id/api/user-balances

Retrieves your account balance. There are two balances: CASH refers to funds available for you to remit or withdraw. HOLDING refers to funds which are in transit.

Get Balance Request

Get Balance Example Request:

curl --location --request GET 'https://dev-cashpickup.aricos.co.id/api/user-balances' \

--header 'Accept: application/json' \

--header 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiI5NGM5MjY0OS1hZTA2LTRmNmUtYjAzYi1iNWE0MzI3ZDBhNDgiLCJqdGkiOiJiZTcwMTJjZWIyOTNiYTJlMWNlZDE0MWI0YmZiZWExNzA5MmNiZjI5NTIyNTQzOWMyZDMzY2E4N2YwMjVmZDQ4ZTg0NTc5OGI2N2YzNWRmNiIsImlhdCI6MTY0MjY3NTYyMC42NTQ3MywibmJmIjoxNjQyNjc1NjIwLjY1NDczNywiZXhwIjoxNjc0MjExNjIwLjYzODE4OSwic3ViIjoiYWUzNjBmOTYtY2QyNi00ZWVjLWE3MWUtOTUxNmQ3ZjNmNTBhIiwic2NvcGVzIjpbXX0.faK3IffH8w5R7EEIscvnYbnhn9uQMS6206TEovhP9lgh1XUD6PubsPiyYtPWyCo_NhO-RzRI_8CHpKaMTPK9hLRUvAeNpV2CjUmM3GG2HSmgwC5a863IJoGvaGSL90aBtw-Ub3DBv1dzn00_-98982o-gSKHElsgf1o0EYGA1Y7vXEdEfN45Eww5rFG2cVUyKQo_eh8J8aITQQ15xydDsWe1lFPYYqrDIfZ6xTNa00b-GYP-DIVHP1NOYPdihOKPgt4uSzb03vfu62PFYzlR2gQiodW7Ellf-5-kIrGVRbogcZzTnBw41yKm7jU9hxx5hLgfEB5sImBMRcihER4W4GM5fLmpVQHmlOT9hTCQrtr__XEZK481OrZ75TsEYE0oaAygP2qMrlGgMYPxXvtsF9jLOrIzSmBx16mV7OeV1hytgot2KcppO-5hui5UI1kRuSY-YIY8I0y7AGX74Sq3SGQnvnesF0r5LbrxZiGP1pDUKHmn37O0SFYXT1QNEJPwwkMwVHmqsaggrl0QNejCXQRNr2eQHc1zq5umw1oTDvoxQhHTfmtyJx3zGYhKfQckoULUZs79Z0MXsqVB1n_8fFxymdagoI2EVMQ-geb0k8a9VdXTffXzAcEMD4z7ZUhx56jnNYJz62R-ZNtkxrMAOsjS3tfMje7WKoRhgOJ4HKY'

Our get balance end-point doesn't have any body request just send the BEARER TOKEN as auth

Get Balance Response

Get Balance Example Response:

{
    "data": [{
        "id": "ae360f96-cd26-4eec-a71e-9516d7f3f50a",
        "email": "argjkt2@gmail.com",
        "name": "ARG_OTR",
        "balance": 8288000,
        "on_hold_balance": 870000
    }],
    "links": {
        "first": "https://dev-cashpickup.aricos.co.id/api/user-balances?page=1",
        "last": null,
        "prev": null,
        "next": null
    },
    "meta": {
        "current_page": 1,
        "from": 1,
        "path": "https://dev-cashpickup.aricos.co.id/api/user-balances",
        "per_page": 15,
        "to": 1
    }
}
Parameter Description
id The unique identity of your account
email The user account that you use
name The user name of your account
balance The real balance that you can use to transfer remittance
on_hold_balance The retained balance from accumulation of every unfinished transaction

Customers

Customer Data

Customers are your end-customers, which include the sender and recipient of a remittance. You can perform recurring remittances with the same customers.

Use the following Customers API to manage your customers with Aricos. Your customers’ personal data is retained to comply with regulatory requirements for fund transfer services in Indonesia, and also allows Aricos to fulfill Know-Your-Client obligations.

Create Customer Request

POST https://dev-cashpickup.aricos.co.id/api/customers

Create customer for your end-customers for the sender and recipient.

Create Customer Example Request:

curl --location --request POST 'https://dev-cashpickup.aricos.co.id/api/customers' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiI5NGM5MjY0OS1hZTA2LTRmNmUtYjAzYi1iNWE0MzI3ZDBhNDgiLCJqdGkiOiJjNWMxNzVjMDAwOTE3ZjM3NmFlODQxN2YyNzExNzM0YzEyZTExYmIxOGNkNzBlYTMzZjRiMzM5MThmODQ5ZGIwMWMyNTA4ODI0NWEzN2M1NyIsImlhdCI6MTY0MjczMzE2Mi4yMTg2NTksIm5iZiI6MTY0MjczMzE2Mi4yMTg2NjcsImV4cCI6MTY3NDI2OTE2Mi4xOTA4NzUsInN1YiI6ImFlMzYwZjk2LWNkMjYtNGVlYy1hNzFlLTk1MTZkN2YzZjUwYSIsInNjb3BlcyI6W119.SSWzHI2hOKtWDzzwUCTqrZzs7uXK132BXmw5h_yDkIpAKQa91TdxdMTU-VhWMunmsQ8aAHRB2tlj-lyQk5P1XYXqeXCpajKgLHIL-P-r7PkXdHQmg8l8qamy_Vrz26zCtuSgD7YhqaTax7IxEXQL4mR9ixZnJ2wvUWz-lDIV0AbxxB5uQqspYcq-8kRjgMEr_wJvPcNW7gg9cPpznHIMcKP5XKpjjzvkn0LxKDkVB5mnAESpknchTdaMIeqFRQ_u3-kLuIm3Qp7Ri-4iiDY4I0N0MqGH93i-W-bOeF_MVI-CIa0AwLuBac-7gnsCVoxfi5QwJrs-pf1VbwsTTw6RSyxnFhp_DDiwC2pZFkoeyIu5hqPgq-u40wWsdHhCmXrurZJVntRDeMER_aC6nIo5WrMxSb_taqYLrzxuQ_ytht8N9ftkcIGt12xpp10jMcNzpECs5Of1Oc8cz5GudgkwOCpX98btstkVYjG-nu_QU0FI_Fxpv-XGGBJ6sbR9ZY96FRBLmjMfUEX7HPQ-HDo44TonabBvv0UhiEbTTYYman0F9PHWRctuc5Xi31m8fnWpOlRcr5dHKmOqxa2YTZgSzhMsZw2gAOXhmH49ef4TNm3ly2bbMHZqDcx6GwTa-rdIK2TZ4uXU9MwZ6fWliu3O5oKOYu2dcLQLBZyeN_BOPak' \
--data-raw '{
    "reference_id": "x-7986",
    "customer_type": "INDIVIDUAL",
    "given_name": "Cika Jerika",
    "surname": "Cijer",
    "nationality":"ID",
    "gender": "Female",
    "occupation":"OTHER",
    "address": {
        "country_code": "ID",
        "province_id": "31",
        "city_id": "3171",
        "line_1": "Jl. Senayan 1 No.15",
        "line_2": "Komplek BNI",
        "postal_code": "16320"
    },
    "date_of_birth": "11-01-1990",
    "place_of_birth": "Prabumulih",
    "identifications": [
        {
            "identification_type": "ktp",
            "identification_country": "ID",
            "identification_number": "1025456545454545"
        },
        {
            "identification_type": "npwp",
            "identification_country": "ID",
            "identification_number": "254545465425489"
        }
    ],
    "account_details": {
        "account_code": "BNI",
        "account_number": "123456789",
        "account_holder_name": "Cika Jerika"
    },
    "email": "cijer@email.com",
    "mobile": {
        "country_code": "62",
        "number": "08111555777"
    },
    "phone": {
        "country_code": "62",
        "number": "02199990000"
    },
    "fax": {
        "country_code": "62",
        "number": "02199991111"
    }
}'
Parameter Description
reference_id
required
string Your unique id for this customer.

Characters Special and alphanumeric
Maximum length 100 maximum characters
customer_type
required
string Legal entity. Valid values: INDIVIDUAL or BUSINESS
given_name
required
string Given name(s). Mandatory for customer_type is INDIVIDUAL and BUSINESS
surname
required
string Surname or family name or last name. Only allowed if customer_type is INDIVIDUAL
nationality
required
string Nationality country of the Customer. 2-letter ISO 3166-2 country code. Refer to code standard here
gender
required
string Gender of the Customer. Only allowed Male or Female value
occupation
required
string Occupation of the Customer. See Occupation Codes
address
optional
object Customer's address
address.country_code
required
string Customer’s country. 2-letter ISO 3166-2 country code. Refer to code standard here. If customer_type is BUSINESS, the country in which the corporate entity is registered. If customer_type is INDIVIDUAL, a country in which the customer holds nationality
address.province
required
string Customer’s province. Download list here
address.city
required
string Customer’s city. Download list here
address.district
optional
string Customer’s district. Download list here
address.village
optional
string Customer’s village. Download list here
address.post_code
optional
string Customer’s postal code
address.line_1
optional
string First line of customer’s address. Typically used for building name and / or apartment number
address.line_2
optional
string Second line of customer’s address. Typically used for building name and / or apartment number
date_of_birth
optional
string Date of Birth. Only allowed if customer_type is INDIVIDUAL. ISO 8601 format YYYY-MM-DD
place_of_birth
optional
string Place of Birth. Only allowed if customer_type is INDIVIDUAL
date_of_registration
optional
string Date of Registration. Only allowed if customer_type is BUSINESS. ISO 8601 format YYYY-MM-DD
identifications
required
object A legal document that verifies the identity of the customer
identification.identification_type
required
string Type of identity of the customer. See Identification Codes

Only allowed value KTP,NPWP,SIM,PASSPORT,OTHER
Characters 10 characters
identification.identification_country
required
string Country identity publisher of the customer.

2-letter ISO 3166-2 country code. Refer to code standard here.
Characters 2 characters
identification.identification_number
required
string Identification number of the customer.

Characters 15 characters for NPWP, 16 characters for KTP and other identification type
account_details
optional
object Customer’s cash pickup details
account_details.account_code
optional
string The code of the account, can be bank codes (BCA, MANDIRI, etc.) or ewallet codes (GOPAY, OVO, etc.). Only Indonesian banks and ewallets supported currently. See Agent Codes
account_details.account_number
optional
string Destination cash pickup number. If disbursing to an e-wallet, phone number registered with the e-wallet account.

Characters Numeric and hyphens
BCA required length 10 characters
Other banks maximum length No maximum characters
Other banks minimum length 1 character
E-wallets Phone number registered with the e-wallet(Example: 0812XXXXXX)


*** We support remittances to virtual accounts of major banks (BRI, BNI, Mandiri, CIMB Niaga, Permata, BTN, and NOBU Bank).
*** We support remittances to major e-wallets (GoPay, OVO, and Mandiri e-cash).
account_details.account_holder_name
optional
string Name of account holder per the bank's or e-wallet's records
Characters Special and alphanumeric
Maximum length No maximum characters
Minimum length 1 character
email
optional
string Customer’s email address. Recommended if you want to notify the customer of the transaction statusShould include the top-level domain name
Example: abc@email.com
mobile
conditionally required
object Customer’s mobile number. Required for Recipient in Cash Pick Up transaction.
mobile.country_code
conditionally required
string Customer’s mobile number international country prefix. Recommended if you want to notify the customer of the transaction status

2-letter ISO 3166-2 country code. Refer to code standard here. Example: 62. Required for Recipient in Cash Pick Up transaction.
mobile.number
conditionally required
string Customer’s mobile number without international prefix. Recommended if you want to notify the customer of the transaction status
Example: 812XXXXXX. Required for Recipient in Cash Pick Up transaction.
phone
optional
object Customer’s phone number.
phone.country_code
optional
string Customer’s phone number international country prefix. Recommended if you want to notify the customer of the transaction status

2-letter ISO 3166-2 country code. Refer to code standard here. Example: 62
phone.number
optional
string Customer’s phone number without international prefix. Recommended if you want to notify the customer of the transaction status
Example: 812XXXXXX
fax
optional
object Customer’s fax number.
fax.country_code
optional
string Customer’s fax number international country prefix. Recommended if you want to notify the customer of the transaction status

2-letter ISO 3166-2 country code. Refer to code standard here. Example: 62
fax.number
optional
string Customer’s fax number without international prefix. Recommended if you want to notify the customer of the transaction status
Example: 812XXXXXX

Create Customer Response

We return a customer object if the call succeeded.

Create Customer Errors

Create Customer Example Response:

{
    "data": {
        "id": "9564d7a6-f5d3-4dd4-911f-4d13144e8311",
        "reference_id": "x-89456",
        "customer_type": "INDIVIDUAL",
        "given_name": "Thomas Djorgi",
        "surname": "Thomdjor",
        "gender": "Female",
        "occupation": "OTHER",
        "fax": {
            "country_code": "62",
            "number": "02199991111"
        },
        "address": {
            "country_code": "ID",
            "province_id": "31",
            "city_id": "3171",
            "line_1": "Jl. Senayan 1 No.15",
            "line_2": "Komplek BNI",
            "postal_code": "16320"
        },
        "date_of_birth": "11-01-1990",
        "place_of_birth": "Prabumulih",
        "nationality": "ID",
        "identifications": [
            {
                "identification_type": "ktp",
                "identification_country": "ID",
                "identification_number": "1025456545454545"
            },
            {
                "identification_type": "npwp",
                "identification_country": "ID",
                "identification_number": "254545465425489"
            }
        ],
        "account_details": null,
        "email": "tomdjor@email.com",
        "mobile": {
            "country_code": "62",
            "number": "08111555777"
        },
        "phone": {
            "country_code": "62",
            "number": "02199990000"
        }
    }
}
Error Code Description
API_VALIDATION_ERROR
400
Inputs are failing validation. The errors field contains details about which fields are violating validation
No retry
INVALID_JSON_FORMAT
400
The request body is not a valid JSON format
No retry
ACCOUNT_CODE_NOT_SUPPORTED_ERROR
400
The code of the account is currently not supported
No retry
ACCOUNT_NUMBER_ERROR
400
Where account_code is “BCA”, account_number input needs to be 10 digits. Please check the account number length before retrying.
No retry
DUPLICATE_CUSTOMER_ERROR
400
The external_id entered has been used before. Please enter a unique external_id and try again.
No retry

Update Customer Request

Updates an existing customer

PUT https://dev-cashpickup.aricos.co.id/api/customers/{reference_id}

Update Customer Example Request:

curl --location --request PUT 'https://dev-cashpickup.aricos.co.id/api/customers/c-01256' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiI5MzFmODI3Ni1mOTBmLTQ0N2ItYjY0ZS1hMjI3MzQxOGVkMzIiLCJqdGkiOiIwYmE2NDcwMTNjYjE2ZTRmYjNhN2RjMGNkYTEyYjk0ZjkwZjExZmE0OWJjN2NjMDdlMmU4MjhlYzQ1MDkxYmM0NDljYjM0ZmQ0ZjVmNWIzNiIsImlhdCI6MTY0MjczOTQxMi44MzE3MjksIm5iZiI6MTY0MjczOTQxMi44MzE3MzYsImV4cCI6MTY3NDI3NTQxMi44MjI3NTQsInN1YiI6IjVhOWEyOGM2ZDRlOGMxMmFkMCIsInNjb3BlcyI6W119.X9hh_rPgAnlreqXZ-CuG-cIub0ihQc1EBNFBluCpcZcAaWJ8WXLrcl1U22etX2TUrBH5ulc7gL8XVaIV-yWSxoK98AbejjcXLzLnrLWvfphAgPmi3nYg96nIagBroVB1HVNByM8LQ8_TA0a7rp8dYqbOQ4zvUpCEPc6SVQo3kcfnxVoNiGuwTrL754kUaAcYhsqyP17m8aO8yDkVbOQzF9dMZDwMRUU_LMMufYJcTMydIIqQBGfzZOyKPTy0AivTe0icT9QmBM_YY-DgZ6sdVKosT3EsTah8Jo9FXKUPxTlDw3Fzwd8WXg6CBDPyz78F9A-n329CLosa16sILlaenBuwwAE-ObLqTVGcfYdATlWDUDDFdtKIdk4Ip2r-LxdLWfix-qF9W2_qrVmqQqIMQz7govDWSaH5pW_nu-v20deAoY5j2HDrQuPtFnd9iUm1UhmHVNOfDTInDw2EqEJ23E_S0A5CY_mgxbiu4leskFsCVVdcqWTA8aRPlUn22tILpk-SQs-NRuwDzX1Z06nuLrCnfFGGXqeLJC2LSFOf82FTHXoUyNMEkKe_uMO3vvavVw-BHoUgMoLyf5ljR4aev69OkJsmSwBXG36o7Ulu8HT514y2gsn0jJW2HSPfLEgwl0Q6e4yM6AFEIR7o_1AMdI-qf2qCg0bQlQCHEfX6RfY' \
--header 'Cookie: TS0126f9dc=01b53461a60cbb3f4b604b6067dc0e494a06a620f7e7e7fef619c6d89a06a08065941af2f434a23c7687fde6280acf1128be33d60b' \
--data-raw '{
    "reference_id": "x-7986",
    "customer_type": "INDIVIDUAL",
    "given_name": "Cika Jerika",
    "surname": "Cijer",
    "nationality":"ID",
    "gender": "Female",
    "occupation":"OTHER",
    "address": {
        "country_code": "ID",
        "province_id": "31",
        "city_id": "3171",
        "line_1": "Jl. Senayan 1 No.15",
        "line_2": "Komplek BNI",
        "postal_code": "16320"
    },
    "date_of_birth": "11-01-1990",
    "place_of_birth": "Prabumulih",
    "identifications": [
        {
            "identification_type": "ktp",
            "identification_country": "ID",
            "identification_number": "1025456545454545"
        },
        {
            "identification_type": "npwp",
            "identification_country": "ID",
            "identification_number": "254545465425489"
        }
    ],
    "account_details": {
        "account_code": "BNI",
        "account_number": "123456789",
        "account_holder_name": "Cika Jerika"
    },
    "email": "cijer@email.com",
    "mobile": {
        "country_code": "62",
        "number": "08111555777"
    },
    "phone": {
        "country_code": "62",
        "number": "02199990000"
    },
    "fax": {
        "country_code": "62",
        "number": "02199991111"
    }
}'
Parameter Description
reference_id
required
string Your unique id for this customer.

Characters Special and alphanumeric
Maximum length 100 maximum characters
customer_type
required
string Legal entity. Valid values: INDIVIDUAL or BUSINESS
given_name
required
string Given name(s). Mandatory for customer_type is INDIVIDUAL and BUSINESS
surname
required
string Surname or family name or last name. Only allowed if customer_type is INDIVIDUAL
nationality
required
string Nationality country of the Customer. 2-letter ISO 3166-2 country code. Refer to code standard here
gender
required
string Gender of the Customer. Only allowed Male or Female value
occupation
required
string Occupation of the Customer. See Occupation Codes
address
optional
object Customer's address
address.country_code
required
string Customer’s country. 2-letter ISO 3166-2 country code. Refer to code standard here. If customer_type is BUSINESS, the country in which the corporate entity is registered. If customer_type is INDIVIDUAL, a country in which the customer holds nationality
address.province
required
string Customer’s province. Download list here
address.city
required
string Customer’s city. Download list here
address.district
optional
string Customer’s district. Download list here
address.village
optional
string Customer’s village. Download list here
address.post_code
optional
string Customer’s postal code
address.line_1
optional
string First line of customer’s address. Typically used for building name and / or apartment number
address.line_2
optional
string Second line of customer’s address. Typically used for building name and / or apartment number
date_of_birth
optional
string Date of Birth. Only allowed if customer_type is INDIVIDUAL. ISO 8601 format YYYY-MM-DD
place_of_birth
optional
string Place of Birth. Only allowed if customer_type is INDIVIDUAL
date_of_registration
optional
string Date of Registration. Only allowed if customer_type is BUSINESS. ISO 8601 format YYYY-MM-DD
identifications
required
object A legal document that verifies the identity of the customer
identification.identification_type
required
string Type of identity of the customer.

Only allowed value KTP,NPWP,SIM,PASSPORT,OTHER
Characters 10 characters
identification.identification_country
required
string Country identity publisher of the customer.

2-letter ISO 3166-2 country code. Refer to code standard here.
Characters 2 characters
identification.identification_number
required
string Identification number of the customer.

Characters 15 characters for NPWP, 16 characters for KTP and other identification type
account_details
optional
object Customer’s cash pickup details
account_details.account_code
optional
string The code of the account, can be bank codes (BCA, MANDIRI, etc.) or ewallet codes (GOPAY, OVO, etc.). Only Indonesian banks and ewallets supported currently. See Agent Codes
account_details.account_number
optional
string Destination cash pickup number. If disbursing to an e-wallet, phone number registered with the e-wallet account.

Characters Numeric and hyphens
BCA required length 10 characters
Other banks maximum length No maximum characters
Other banks minimum length 1 character
E-wallets Phone number registered with the e-wallet(Example: 0812XXXXXX)


*** We support remittances to virtual accounts of major banks (BRI, BNI, Mandiri, CIMB Niaga, Permata, BTN, and NOBU Bank).
*** We support remittances to major e-wallets (GoPay, OVO, and Mandiri e-cash).
account_details.account_holder_name
optional
string Name of account holder per the bank's or e-wallet's records
Characters Special and alphanumeric
Maximum length No maximum characters
Minimum length 1 character
email
optional
string Customer’s email address. Recommended if you want to notify the customer of the transaction statusShould include the top-level domain name
Example: abc@email.com
mobile
conditionally required
object Customer’s mobile number. Required for Recipient in Cash Pick Up transaction.
mobile.country_code
conditionally required
string Customer’s mobile number international country prefix. Recommended if you want to notify the customer of the transaction status

2-letter ISO 3166-2 country code. Refer to code standard here. Example: 62. Required for Recipient in Cash Pick Up transaction.
mobile.number
conditionally required
string Customer’s mobile number without international prefix. Recommended if you want to notify the customer of the transaction status
Example: 812XXXXXX. Required for Recipient in Cash Pick Up transaction.
phone
optional
object Customer’s phone number.
phone.country_code
optional
string Customer’s phone number international country prefix. Recommended if you want to notify the customer of the transaction status

2-letter ISO 3166-2 country code. Refer to code standard here. Example: 62
phone.number
optional
string Customer’s phone number without international prefix. Recommended if you want to notify the customer of the transaction status
Example: 812XXXXXX
fax
optional
object Customer’s fax number.
fax.country_code
optional
string Customer’s fax number international country prefix. Recommended if you want to notify the customer of the transaction status

2-letter ISO 3166-2 country code. Refer to code standard here. Example: 62
fax.number
optional
string Customer’s fax number without international prefix. Recommended if you want to notify the customer of the transaction status
Example: 812XXXXXX

Update Customer Response

We return the updated customer object if the call succeeded.

Update Customer Errors

Update Customer Example Response:

{
    "data": {
        "id": "9564d7a6-f5d3-4dd4-911f-4d13144e8311",
        "reference_id": "x-89456",
        "customer_type": "INDIVIDUAL",
        "given_name": "Thomas Djorgi",
        "surname": "Thomdjor",
        "gender": "Female",
        "occupation": "OTHER",
        "fax": {
            "country_code": "62",
            "number": "02199991111"
        },
        "address": {
            "country_code": "ID",
            "province_id": "31",
            "city_id": "3171",
            "line_1": "Jl. Senayan 1 No.15",
            "line_2": "Komplek BNI",
            "postal_code": "16320"
        },
        "date_of_birth": "11-01-1990",
        "place_of_birth": "Prabumulih",
        "nationality": "ID",
        "identifications": [
            {
                "identification_type": "ktp",
                "identification_country": "ID",
                "identification_number": "1025456545454545"
            },
            {
                "identification_type": "npwp",
                "identification_country": "ID",
                "identification_number": "254545465425489"
            }
        ],
        "account_details": null,
        "email": "tomdjor@email.com",
        "mobile": {
            "country_code": "62",
            "number": "08111555777"
        },
        "phone": {
            "country_code": "62",
            "number": "02199990000"
        }
    }
}
Error Code Description
API_VALIDATION_ERROR
400
Inputs are failing validation. The errors field contains details about which fields are violating validation
No retry
INVALID_JSON_FORMAT
400
The request body is not a valid JSON format
No retry
ACCOUNT_CODE_NOT_SUPPORTED_ERROR
400
The code of the account is currently not supported
No retry
ACCOUNT_NUMBER_ERROR
400
Where account_code is “BCA”, account_number input needs to be 10 digits. Please check the account number length before retrying.
No retry
DUPLICATE_CUSTOMER_ERROR
400
The external_id entered has been used before. Please enter a unique external_id and try again.
No retry
CUSTOMER_NOT_FOUND_ERROR
400
Could not find customer.
No retry

Get Customer With reference_id Request

GET https://dev-cashpickup.aricos.co.id/api/customers/__find-by?reference_id={reference_id}

Returns an array with a single object which contains the customer corresponding to the unique reference_id. Returns an empty array if there is no customer corresponding to the reference_id.

Get Customer With reference_id Example Request:

curl --location --request GET 'https://dev-cashpickup.aricos.co.id/api/customers/__find-by?reference_id=x-7986' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiI5NGM5MjY0OS1hZTA2LTRmNmUtYjAzYi1iNWE0MzI3ZDBhNDgiLCJqdGkiOiJjNWMxNzVjMDAwOTE3ZjM3NmFlODQxN2YyNzExNzM0YzEyZTExYmIxOGNkNzBlYTMzZjRiMzM5MThmODQ5ZGIwMWMyNTA4ODI0NWEzN2M1NyIsImlhdCI6MTY0MjczMzE2Mi4yMTg2NTksIm5iZiI6MTY0MjczMzE2Mi4yMTg2NjcsImV4cCI6MTY3NDI2OTE2Mi4xOTA4NzUsInN1YiI6ImFlMzYwZjk2LWNkMjYtNGVlYy1hNzFlLTk1MTZkN2YzZjUwYSIsInNjb3BlcyI6W119.SSWzHI2hOKtWDzzwUCTqrZzs7uXK132BXmw5h_yDkIpAKQa91TdxdMTU-VhWMunmsQ8aAHRB2tlj-lyQk5P1XYXqeXCpajKgLHIL-P-r7PkXdHQmg8l8qamy_Vrz26zCtuSgD7YhqaTax7IxEXQL4mR9ixZnJ2wvUWz-lDIV0AbxxB5uQqspYcq-8kRjgMEr_wJvPcNW7gg9cPpznHIMcKP5XKpjjzvkn0LxKDkVB5mnAESpknchTdaMIeqFRQ_u3-kLuIm3Qp7Ri-4iiDY4I0N0MqGH93i-W-bOeF_MVI-CIa0AwLuBac-7gnsCVoxfi5QwJrs-pf1VbwsTTw6RSyxnFhp_DDiwC2pZFkoeyIu5hqPgq-u40wWsdHhCmXrurZJVntRDeMER_aC6nIo5WrMxSb_taqYLrzxuQ_ytht8N9ftkcIGt12xpp10jMcNzpECs5Of1Oc8cz5GudgkwOCpX98btstkVYjG-nu_QU0FI_Fxpv-XGGBJ6sbR9ZY96FRBLmjMfUEX7HPQ-HDo44TonabBvv0UhiEbTTYYman0F9PHWRctuc5Xi31m8fnWpOlRcr5dHKmOqxa2YTZgSzhMsZw2gAOXhmH49ef4TNm3ly2bbMHZqDcx6GwTa-rdIK2TZ4uXU9MwZ6fWliu3O5oKOYu2dcLQLBZyeN_BOPak'
Query Parameter Description
reference_id
optional
string Unique ID you provided in the Create Customer request
The reference_id must match the reference_id used at customer creation precisely

Get Customer With reference_id Example Response:

{
    "data": {
        "id": "9560ea7c-a505-47a9-8482-c2063ba64ae7",
        "reference_id": "x-7986",
        "customer_type": "INDIVIDUAL",
        "given_name": "Cika Jerika",
        "surname": "Cijer",
        "gender": "Female",
        "occupation": "OTHER",
        "fax": {
            "number": "02199991111",
            "country_code": "62"
        },
        "address": {
            "country_code": "ID",
            "province_id": "31",
            "city_id": "3171",
            "line_1": "Jl. Senayan 1 No.15",
            "line_2": "Komplek BNI",
            "postal_code": "16320"
        },
        "date_of_birth": "1990-11-01",
        "place_of_birth": "Prabumulih",
        "nationality": "ID",
        "identifications": [
            {
                "identification_type": "ktp",
                "identification_number": "1025456545454545",
                "identification_country": "ID"
            },
            {
                "identification_type": "npwp",
                "identification_number": "254545465425489",
                "identification_country": "ID"
            }
        ],
        "account_details": {
            "id": "9560ea7c-ad42-4ef9-8d71-39a42f24d1c5",
            "account_code": "BNI",
            "account_number": "123456789",
            "account_holder_name": "Cika Jerika"
        },
        "email": "cijer@email.com",
        "mobile": {
            "country_code": "62",
            "number": "08111555777"
        },
        "phone": {
            "country_code": "62",
            "number": "02199990000"
        }
    }
}

Cash Pickup Remittance

Our Cash Pickup Remittance APIs allow you to send remittances from your Aricos Account on behalf of a sender to your designated recipient. Only IDR-IDR transfers supported currently.

Create Remittance

POST https://dev-cashpickup.aricos.co.id/api/remittances

Sends a new remittance from your Aricos Account to a recipient. You’ll need to have created a customer representing the sender and a customer representing the recipient first.

Your Aricos account balance must be able to cover the payout amount and the transaction fees, or you’ll receive an “Insufficient Balance” error.

Create Remittance Request

Create Remittance Example Request:

curl --location --request POST 'https://dev-cashpickup.aricos.co.id/api/remittances' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiI5NGM5MjY0OS1hZTA2LTRmNmUtYjAzYi1iNWE0MzI3ZDBhNDgiLCJqdGkiOiJjNWMxNzVjMDAwOTE3ZjM3NmFlODQxN2YyNzExNzM0YzEyZTExYmIxOGNkNzBlYTMzZjRiMzM5MThmODQ5ZGIwMWMyNTA4ODI0NWEzN2M1NyIsImlhdCI6MTY0MjczMzE2Mi4yMTg2NTksIm5iZiI6MTY0MjczMzE2Mi4yMTg2NjcsImV4cCI6MTY3NDI2OTE2Mi4xOTA4NzUsInN1YiI6ImFlMzYwZjk2LWNkMjYtNGVlYy1hNzFlLTk1MTZkN2YzZjUwYSIsInNjb3BlcyI6W119.SSWzHI2hOKtWDzzwUCTqrZzs7uXK132BXmw5h_yDkIpAKQa91TdxdMTU-VhWMunmsQ8aAHRB2tlj-lyQk5P1XYXqeXCpajKgLHIL-P-r7PkXdHQmg8l8qamy_Vrz26zCtuSgD7YhqaTax7IxEXQL4mR9ixZnJ2wvUWz-lDIV0AbxxB5uQqspYcq-8kRjgMEr_wJvPcNW7gg9cPpznHIMcKP5XKpjjzvkn0LxKDkVB5mnAESpknchTdaMIeqFRQ_u3-kLuIm3Qp7Ri-4iiDY4I0N0MqGH93i-W-bOeF_MVI-CIa0AwLuBac-7gnsCVoxfi5QwJrs-pf1VbwsTTw6RSyxnFhp_DDiwC2pZFkoeyIu5hqPgq-u40wWsdHhCmXrurZJVntRDeMER_aC6nIo5WrMxSb_taqYLrzxuQ_ytht8N9ftkcIGt12xpp10jMcNzpECs5Of1Oc8cz5GudgkwOCpX98btstkVYjG-nu_QU0FI_Fxpv-XGGBJ6sbR9ZY96FRBLmjMfUEX7HPQ-HDo44TonabBvv0UhiEbTTYYman0F9PHWRctuc5Xi31m8fnWpOlRcr5dHKmOqxa2YTZgSzhMsZw2gAOXhmH49ef4TNm3ly2bbMHZqDcx6GwTa-rdIK2TZ4uXU9MwZ6fWliu3O5oKOYu2dcLQLBZyeN_BOPak' \
--data-raw '{
    "reference_id": "XXX-3344",
    "method": "A2C",
    "amount": 50000,
    "purpose_code": "FAMILY",
    "source_of_funds": "PERSONAL_SAVINGS",
    "description": "Transfer untuk ibu",
    "sender_customer_id": "9564d736-8852-4e4a-ad8a-0f40d14acb69",
    "recipient_customer_id": "9564d7a6-f5d3-4dd4-911f-4d13144e8311",
    "agent_id": "0620b618-b2ab-46cf-ab23-679a78945b5e"
}'
Parameter Description
reference_id
required
string A unique ID for your remittance. We validate this to protect against accidental duplicate remittances.

Characters Special and alphanumeric
Maximum length 100 characters
method
required
string A fix value method flag for Cash Pickup Account Transaction. We validate this to make sure your remittance run in Cash Pickup transaction.

Use Fix Value A2C always use the fix value when sending remittance request
amount
required
number Transfer amount

Characters Numerical integers, no decimals
description
required
string Description to send with the remittance. The recipient may see this e.g., in their statement (if supported) or in email receipts we send on your behalf.

Maximum length 512 characters

sender_customer_id
required
string The id of the sender customer (as returned by Aricos’s Create Customer endpoint).

The following fields are required in the sender customer object: given_name, customer_type, country_code
recipient_customer_id
required
string The id of the recipient customer (as returned by Aricos's Create Customer endpoint).

The following fields are required in the recipient customer object: given_name, customer_type, country_code, account_code, account_number, account_holder_name
source_of_funds
required
string Source of funds. Refer to our list of Source of Funds Codes
purpose_code
required
string Purpose of the remittance. Refer to our list of Purpose Codes
agent_id
required
string The destination Agent ID of your remittance. Refer to our list of Agent Lists

agent id value 0620b618-b2ab-46cf-ab23-679a78945b5e please use the refer agent id for your cash pickup remittance

Create Remittance Response

Create Remittance Example Response:

{
    "data": {
        "id": "9564e523-fd13-4d9b-89c5-13bccd500eec",
        "reference_id": "XXX-2233",
        "method": "A2C",
        "amount": 72000,
        "purpose_code": "FAMILY",
        "source_of_funds": "PERSONAL_SAVINGS",
        "description": "Transfer untuk ibu",
        "transaction_status": "COMPLETED",
        "sender": {
            "id": "9564d736-8852-4e4a-ad8a-0f40d14acb69",
            "reference_id": "x-15648",
            "customer_type": "INDIVIDUAL",
            "given_name": "Cika Jeriko",
            "surname": "Cijer",
            "gender": "Female",
            "occupation": "OTHER",
            "fax": {
                "number": "02199991111",
                "country_code": "62"
            },
            "address": {
                "country_code": "ID",
                "province_id": "31",
                "city_id": "3171",
                "line_1": "Jl. Senayan 1 No.15",
                "line_2": "Komplek BNI",
                "postal_code": "16320"
            },
            "date_of_birth": "1990-11-01",
            "place_of_birth": "Prabumulih",
            "nationality": "ID",
            "identifications": [
                {
                    "identification_type": "ktp",
                    "identification_number": "1025456545454545",
                    "identification_country": "ID"
                },
                {
                    "identification_type": "npwp",
                    "identification_number": "254545465425489",
                    "identification_country": "ID"
                }
            ],
            "account_details": null,
            "email": "cijer@email.com",
            "mobile": {
                "country_code": "62",
                "number": "08111555777"
            },
            "phone": {
                "country_code": "62",
                "number": "02199990000"
            }
        },
        "recipient": {
            "id": "9564d7a6-f5d3-4dd4-911f-4d13144e8311",
            "reference_id": "x-89456",
            "customer_type": "INDIVIDUAL",
            "given_name": "Thomas Djorgi",
            "surname": "Thomdjor",
            "gender": "Female",
            "occupation": "OTHER",
            "fax": {
                "number": "02199991111",
                "country_code": "62"
            },
            "address": {
                "country_code": "ID",
                "province_id": "31",
                "city_id": "3171",
                "line_1": "Jl. Senayan 1 No.15",
                "line_2": "Komplek BNI",
                "postal_code": "16320"
            },
            "date_of_birth": "1990-11-01",
            "place_of_birth": "Prabumulih",
            "nationality": "ID",
            "identifications": [
                {
                    "identification_type": "ktp",
                    "identification_number": "1025456545454545",
                    "identification_country": "ID"
                },
                {
                    "identification_type": "npwp",
                    "identification_number": "254545465425489",
                    "identification_country": "ID"
                }
            ],
            "account_details": null,
            "email": "tomdjor@email.com",
            "mobile": {
                "country_code": "62",
                "number": "08111555777"
            },
            "phone": {
                "country_code": "62",
                "number": "02199990000"
            }
        }
    }
}

We return a response with additional fields described below if there were no initial errors with the remittance creation (request formatted incorrectly, invalid purpose code, insufficient funds, etc). The status of the remittance will be initially marked as COMPLETED.

Parameter Description
status string Status of the remittance. Default is COMPLETED.
created string An ISO timestamp that tracks when the remittance was created
updated string An ISO timestamp that tracks when the remittance was updated
id string Unique remittance ID

Create Remittance Errors

Error Code Description
API_VALIDATION_ERROR
400
Inputs are failing validation. The errors field contains details about which fields are violating validation.
No retry
INVALID_JSON_FORMAT
400
The request body is not a valid JSON format.
No retry
DUPLICATE_REMITTANCE_ERROR
400
External ID has been used before. Use a unique External ID and try again.
No retry
RECIPIENT_AMOUNT_ERROR
400
The transfer amount requested is lower than the prescribed minimum for the recipient. Amend the transfer amount before retrying.
No retry
MAXIMUM_TRANSFER_LIMIT_ERROR
400
The transfer amount requested is higher than the prescribed maximum for the recipient. Amend the transfer amount before retrying.
No retry
SENDER_CUSTOMER_VALIDATION_ERROR
400
There are missing inputs for this customer which are required for the remittance. The errors field contains details about which fields are violating validation.
No retry
RECIPIENT_CUSTOMER_VALIDATION_ERROR
400
There are missing inputs for this customer which are required for the remittance. The errors field contains details about which fields are violating validation.
No retry
SENDER_CUSTOMER_NOT_FOUND_ERROR
400
Could not find customer.
No retry
RECIPIENT_CUSTOMER_NOT_FOUND_ERROR
400
Could not find customer.
No retry
SERVER_ERROR
500
Error connecting to our server. Please use Get remittance by external_id API to check whether the remittance has already been created. If you receive an empty array, the remittance has not been created; please retry the remittance request in 1-2 hours.
No retry

Get Remittance With reference_id Request

GET https://dev-cashpickup.aricos.co.id/api/remittances/{external_id}

Returns an array with a single object which contains the remittance corresponding to the unique reference_id. Returns an empty array if there is no remittance corresponding to the reference_id.

Get Customer With external_id Example Request:

curl --location --request GET 'https://dev-cashpickup.aricos.co.id/api/remittances/XXX-2233' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhdWQiOiI5NGM5MjY0OS1hZTA2LTRmNmUtYjAzYi1iNWE0MzI3ZDBhNDgiLCJqdGkiOiJjNWMxNzVjMDAwOTE3ZjM3NmFlODQxN2YyNzExNzM0YzEyZTExYmIxOGNkNzBlYTMzZjRiMzM5MThmODQ5ZGIwMWMyNTA4ODI0NWEzN2M1NyIsImlhdCI6MTY0MjczMzE2Mi4yMTg2NTksIm5iZiI6MTY0MjczMzE2Mi4yMTg2NjcsImV4cCI6MTY3NDI2OTE2Mi4xOTA4NzUsInN1YiI6ImFlMzYwZjk2LWNkMjYtNGVlYy1hNzFlLTk1MTZkN2YzZjUwYSIsInNjb3BlcyI6W119.SSWzHI2hOKtWDzzwUCTqrZzs7uXK132BXmw5h_yDkIpAKQa91TdxdMTU-VhWMunmsQ8aAHRB2tlj-lyQk5P1XYXqeXCpajKgLHIL-P-r7PkXdHQmg8l8qamy_Vrz26zCtuSgD7YhqaTax7IxEXQL4mR9ixZnJ2wvUWz-lDIV0AbxxB5uQqspYcq-8kRjgMEr_wJvPcNW7gg9cPpznHIMcKP5XKpjjzvkn0LxKDkVB5mnAESpknchTdaMIeqFRQ_u3-kLuIm3Qp7Ri-4iiDY4I0N0MqGH93i-W-bOeF_MVI-CIa0AwLuBac-7gnsCVoxfi5QwJrs-pf1VbwsTTw6RSyxnFhp_DDiwC2pZFkoeyIu5hqPgq-u40wWsdHhCmXrurZJVntRDeMER_aC6nIo5WrMxSb_taqYLrzxuQ_ytht8N9ftkcIGt12xpp10jMcNzpECs5Of1Oc8cz5GudgkwOCpX98btstkVYjG-nu_QU0FI_Fxpv-XGGBJ6sbR9ZY96FRBLmjMfUEX7HPQ-HDo44TonabBvv0UhiEbTTYYman0F9PHWRctuc5Xi31m8fnWpOlRcr5dHKmOqxa2YTZgSzhMsZw2gAOXhmH49ef4TNm3ly2bbMHZqDcx6GwTa-rdIK2TZ4uXU9MwZ6fWliu3O5oKOYu2dcLQLBZyeN_BOPak'

Get Remittance With external_id Example Response:

{
    "data": {
        "id": "9564e523-fd13-4d9b-89c5-13bccd500eec",
        "reference_id": "XXX-2233",
        "method": "A2C",
        "amount": 72000,
        "purpose_code": "FAMILY",
        "source_of_funds": "PERSONAL_SAVINGS",
        "description": "Transfer untuk ibu",
        "transaction_status": "COMPLETED"
    }
}
Parameter Description
reference_id
required
string Unique ID you provided in the Create Remittance request
The reference_id must match the reference_id used at remittance creation precisely

Data References

Below are some list of data references that you require to use our API's.

Agent Codes

ID Key Description
0620b618-b2ab-46cf-ab23-679a78945b5e POS POS Indonesia

Purpose Codes

Key Description
SELF Transfer to own account
FAMILY Family Maintenance
EDUCATION Education-related student expenses
MEDICAL Medical Treatment
HOTEL Hotel Accomodation
TRAVEL Travel
UTILITIES Utility Bills
LOAN_REPAYMENT Repayment of Loans
TAX_PAYMENT Tax Payment
RESIDENCE_PURCHASE Purchase of Residential Property
RESIDENCE_RENT Payment of Property Rental
INSURANCE Insurance
MUTUAL_FUND Mutual Fund Investment
SHARES_INVESTMENT Investment in Shares
DONATIONS Donations
ADVERTISING Advertising & Public relations-related expenses
ROYALTY_FEES Royalty fees, trademark fees, patent fees, and copyright fees
BROKER_FEES Fees for brokers, front end fee, commitment fee, guarantee fee and custodian fee
ADVISORS Fees for advisors, technical assistance, and academic purpose, including remuneration for specialists
OFFICE Representative office expenses
CONSTRUCTION Construction costs / expenses
SHIPMENT Transportation fees for goods
EXPORT For payment of exported goods
DELIVERY Delivery fees for goods
TRADES General Goods Trades - Offline trade
SALARY Salary
REFUND Refund
LOAN Loan

Source of Funds

Key Description
INVESTMENT Bonds, fixed deposits, preference shares, business ownership/equity or property ownership
PERSONAL_SAVINGS Funds kept in an account in a bank or a similar organization
BUSINESS_REVENUE Income from a business or a company
LEGACY Inherited money from a will
BUSINESS_ARRANGEMENT Any understanding, procedure, course of dealing, or arrangement between a creditor and a seller
LOAN A sum of money that is borrowed
SALARY A fixed regular payment made by an employer
OTHER Other

Identification Codes

Key Description
KTP Kartu Tanda Penduduk (national identity card number) of the customer
NPWP Nomor Pokok Wajib Pajak (tax number) of the customer
SIM Surat Izin Mengemudi (driver’s licence) of the customer
PASSPORT Passport of the customer
OTHER Other identification type of the customer

Occupation Codes

Key Desc
OTHERS OTHERS
STUDENT STUDENT
HOUSEWIFE HOUSEWIFE
ENTERPRENEUR ENTERPRENEUR
PRIVATE_EMPLOYEES PRIVATE EMPLOYEES
STATE_EMPLOYEES STATE EMPLOYEES
ARMY ARMY
POLICE POLICE
LECTURER LECTURER
TEACHER TEACHER
DOCTOR DOCTOR
MIDWIFE MIDWIFE
NURSE NURSE
MEMBER_OF_HOUSE_REPRESENTATIVE MEMBER OF HOUSE REPRESENTATIVE
FARMER FARMER
BREEEDER BREEEDER
FISHERMAN FISHERMAN
HOUSEMAID HOUSEMAID
LABOR LABOR
DRIVER DRIVER
TRADER TRADER
FARM_WORKERS FARM WORKERS
STOCKMAN STOCKMAN
BARBER BARBER
ELECTRICIAN ELECTRICIAN
STONEMASON STONEMASON
CARPENTER CARPENTER
COBBLER COBBLER
BLACKSMITH BLACKSMITH
TAILOR TAILOR
MECHANIC MECHANIC
DENTIST DENTIST
ARTIST ARTIST
TRADITIONAL_HEALER TRADITIONAL HEALER
TRADITIONA_MIDWIFE TRADITIONA MIDWIFE
HAIRDRESSER HAIRDRESSER
MAKEUP_ARTIST MAKEUP ARTIST
FASHION_DESIGNER FASHION DESIGNER
FASHION_DESIGNER FASHION DESIGNER
JOURNALIST JOURNALIST
CHEF CHEF
PROMOTOR PROMOTOR
TRANSLATOR TRANSLATOR
RELIGIOUS_LEADER RELIGIOUS LEADER
PENSIONARY PENSIONARY
CONSTRUCTION CONSTRUCTION
TRANSPORTATION TRANSPORTATION
AMBASSADOR AMBASSADOR
PILOT PILOT
LAWYER LAWYER
NOTARY_PUBLIC NOTARY PUBLIC
ARCHITECT ARCHITECT
ACCOUNTANT ACCOUNTANT
CONSULTANT CONSULTANT
PHARMACIST PHARMACIST
PSYCHIATRIST PSYCHIATRIST
TV_ANNOUNCER TV ANNOUNCER
RADIO_ANNOUNCER RADIO ANNOUNCER
SAILOR SAILOR
RESEARCHER RESEARCHER
BROKER BROKER

Remittance Statuses

Key Description
COMPLETED The sending transaction has confirmed transmission of the remittance.
FAILED Remittance could not be transferred to the recipient due to certain errors.

Remittance Failure Codes

Key Description
INSUFFICIENT_BALANCE The balance in your account is insufficient to make the remittance in the desired amount.
UNKNOWN_BANK_NETWORK_ERROR The bank networks have returned an unknown error to us. We are unable to predict whether the remittance will succeed should you retry the same remittance request.
TEMPORARY_BANK_NETWORK_ERROR The bank networks are experiencing a temporary error. Please retry the remittance in 1-3 hours.
TEMPORARY_TRANSFER_ERROR We’ve encountered a temporary issue while processing this remittance. Please retry the remittance in 1-2 hours.
SWITCHING_NETWORK_ERROR At least one of the switching networks is encountering an issue. Please retry the remittance in 1-3 hours.
INVALID_DESTINATION The banks have reported that the destination account is unregistered or blocked. If unsure about this, please retry again or contact the destination bank directly regarding the status of the destination account.
TRANSFER_ERROR We’ve encountered a fatal error while processing this remittance. Certain API fields in your request may be invalid. Please contact our customer support team for more information.

Errors

Below are some of most common errors across all our endpoints. Specific errors are located under each endpoint. If you have any questions please contact us.

Error Code Meaning
400 Bad request, e.g. validation error
401 Unauthorised access, e.g. the wrong user or password
403 Forbidden access, e.g. account does not have permission for this endpoint
404 Page or data not found
500 Unhandled error - contact us when this happens. If this was a response to a request to send money, please check the status of the resource before retrying to ensure that the request will not be processed twice.
503 Service Unavailable -- We're temporarily offline for maintenance. Please try again later.