Ayolinx-Openapi
🇨🇳中文
  • 🇬🇧English
  • 🇨🇳中文
  1. Ayolinx提供给商户的接口
Ayolinx-Openapi
🇨🇳中文
  • 🇬🇧English
  • 🇨🇳中文
  • Openapi-ZH-CN
    • 开发须知
      • 简介
      • Header参数说明
      • 渠道说明
      • 回调说明
      • 错误码说明
      • Signature生成规则
      • PartnerServiceId说明
    • GetAccessToken
      • Access Token B2B
    • EWallet
      • Ayolinx提供给商户的接口
        • Get Payment Url
        • Inquiry Status
      • 需要商户提供的回调地址
        • Payment Notify
    • Qris
      • Ayolinx提供给商户的接口
        • Generate Qris
        • Query Qris
        • Cancel Qris
      • 需要商户提供的回调地址
        • Payment Notify
    • VirtualAccount
      • Ayolinx提供给商户的接口
        • Error Codes
        • Create VA
          POST
        • Inquiry Va
          POST
      • 需要商户提供的接口
        • 回调说明
        • Access Token B2B
        • Payment
      • 非snap回调接口
        • Payment Notify
  1. Ayolinx提供给商户的接口

Create VA

POST
/v1.0/transfer-va/create-va
VirtualAccount/Transfer Va Conmmon
虚拟账户号码将在 Ayolinx 注册,当客户在收单方渠道(自动取款机、手机银行、网上银行等)进行支付时,收单方会向我们这边查询。
3 种交互方式:
a. Ayolinx 生成的虚拟账户:虚拟账户号码由 Ayolinx 生成。适用于电子商务商业模式。
b. 商户生成的虚拟账户:虚拟账户号码由商户生成。适用于充值商业模式。
c. 直接查询:虚拟账户号码在商户端注册,当客户在收单方渠道(自动取款机、手机银行、网上银行等)进行支付时,Ayolinx 会将收单方的查询请求转发到商户端。

Request

Header Params
Content-Type
string 
required
Example:
application/json
X-TIMESTAMP
string 
required
客户端当地时间,格式为yyyy-MM-ddTHH:mm:ssXXX
Example:
2024-09-12T12:55:00+07:00
X-SIGNATURE
string 
required
使用对称签名算法 HMAC_SHA512(clientSecret, stringToSign) 并且转换成 base64.stringToSign = "{EndpointUrl}:{hashedRequestBody}:{bodyData)).EndpointUrl 格式: /direct-debit/core/v1/debit/payment-host-to-host
Example:
85be817c55b2c135157c7e89f52499bf0c25ad6eeebe04a986e8c862561b19a5
X-PARTNER-ID
string 
required
商户ID,注册商户生成的唯一ID字符串
Example:
CK-11111abc-0000-2222-bbcc-dd55555ee666
X-EXTERNAL-ID
string 
required
字符串,每次请求生成唯一的request-id字符串
Example:
418075533589
Authorization
string 
required
Bearer "access token" ,从 Get B2B Token API获取
Example:
Bearer eyJhbGciOiJSUzI1NiJ9.eyJleHAiOjE2OTgwNTA3NDMsImlzcyI6IkRPS1UiLCJjbGllbnRJZCI6IkJSTi0wMjExLTE2OTY5MTk2NTE5MTgifQ.x-D5VlK6TlVZbLPUSCr-Gbfgh4tnp0QDJmedYFHJGHFjg1c4x39pszU4sLvRhr0Jk0vKdMIzxUZeNhKoesWqDJitnG3kfrNZNsMb_WYUC0tJW91onXzYOKXiTgsHwRNFoWPQHlXIEtT3RQm-SRlCpk_E0gsavgkQn2-kbJEBnPhIs4eKg5IUY9GYi4hRr-_GHsudDl8sd2B5UBB_ 3EPXdbqb45N4ciQ
Body Params application/json
partnerServiceId
string 
required
不同渠道不一样 BNI,对应值见【PartnerServiceId说明】
>= 1 characters<= 8 characters
customerNo
string 
required
是Ayolinx分配的,kyc后会提供
>= 1 characters<= 20 characters
virtualAccountNo
string 
optional
partnerServiceId(8 位)+ 随机生成8位数字。若不填则由ayolinx自动生成(目前暂不支持自定义virtualAccountNo,请传空)。
>= 1 characters<= 28 characters
virtualAccountName
string 
required
客户名称
>= 1 characters<= 255 characters
trxId
string 
required
唯一交易号,最小长度1,最大长度:64
>= 1 characters<= 64 characters
virtualAccountTrxType
string 
optional
此交易的交易类型。C(固定金额),O(开放金额)。默认值为 C
>= 1 characters<= 1 characters
expiredDate
string 
optional
客户端当前的本地时间,采用 “yyyy-MM-ddTHH:mm:ssXXX” 格式。例如:2024-09-20T06:36:36+00:00
totalAmount
object 
required
交易金额
value
string 
required
交易净额。
如果是印尼盾(IDR),则值包含两位小数。
例如,IDR 10.000,- 将表示为 10000.00。
如果是open va,请传0.00
>= 1 characters<= 14 characters
currency
string 
required
货币类型
>= 1 characters<= 3 characters
additionalInfo
object 
required
其他参数
channel
string 
required
渠道:
VIRTUAL_ACCOUNT_BNI
VIRTUAL_ACCOUNT_CIMB
VIRTUAL_ACCOUNT_MANDIRI
>= 1 characters<= 30 characters
Example
{
  "partnerServiceId": "98829172",
  "customerNo": "30000000000000000001",
  "virtualAccountNo": "4339382374532139",
  "virtualAccountName": "Customer Name",
  "trxId": "123321123321",
  "virtualAccountTrxType": "C",
  "totalAmount": {
    "value": "11500.00",
    "currency": "IDR"
  },
  "additionalInfo": {
    "channel": "VIRTUAL_ACCOUNT_BCA"
  }
}

Request samples

Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST 'http://sandbox.dev.ayolinx.id:9080/v1.0/transfer-va/create-va' \
--header 'X-TIMESTAMP: 2024-09-12T12:55:00+07:00' \
--header 'X-SIGNATURE: 85be817c55b2c135157c7e89f52499bf0c25ad6eeebe04a986e8c862561b19a5' \
--header 'X-PARTNER-ID: CK-11111abc-0000-2222-bbcc-dd55555ee666' \
--header 'X-EXTERNAL-ID: 418075533589' \
--header 'Authorization: Bearer eyJhbGciOiJSUzI1NiJ9.eyJleHAiOjE2OTgwNTA3NDMsImlzcyI6IkRPS1UiLCJjbGllbnRJZCI6IkJSTi0wMjExLTE2OTY5MTk2NTE5MTgifQ.x-D5VlK6TlVZbLPUSCr-Gbfgh4tnp0QDJmedYFHJGHFjg1c4x39pszU4sLvRhr0Jk0vKdMIzxUZeNhKoesWqDJitnG3kfrNZNsMb_WYUC0tJW91onXzYOKXiTgsHwRNFoWPQHlXIEtT3RQm-SRlCpk_E0gsavgkQn2-kbJEBnPhIs4eKg5IUY9GYi4hRr-_GHsudDl8sd2B5UBB_ 3EPXdbqb45N4ciQ' \
--header 'Content-Type: application/json' \
--data-raw '{
    "partnerServiceId": "98829172",
    "customerNo": "30000000000000000001",
    "virtualAccountNo": "4339382374532139",
    "virtualAccountName": "Customer Name",
    "trxId": "123321123321",
    "virtualAccountTrxType": "C",
    "totalAmount": {
        "value": "11500.00",
        "currency": "IDR"
    },
    "additionalInfo": {
        "channel": "VIRTUAL_ACCOUNT_BCA"
    }
}'

Responses

🟢200OK
application/json
Body
responseCode
string 
required
>= 1 characters<= 7 characters
responseMessage
string 
required
>= 1 characters<= 150 characters
virtualAccountData
object 
required
partnerServiceId
string 
required
>= 1 characters<= 8 characters
customerNo
string 
required
>= 1 characters<= 20 characters
virtualAccountNo
string 
required
>= 1 characters<= 28 characters
virtualAccountName
string 
required
>= 1 characters<= 255 characters
virtualAccountEmail
string 
optional
>= 1 characters<= 255 characters
virtualAccountPhone
string 
optional
>= 9 characters<= 20 characters
virtualAccountTrxType
string 
optional
>= 1 characters<= 1 characters
trxId
string 
required
>= 1 characters<= 64 characters
totalAmount
object 
optional
billDetails
string 
optional
freeTexts
string 
optional
feeAmount
string 
optional
additionalInfo
object 
optional
expiredDate
string 
optional
Examples
{
  "responseCode": "2002700",
  "responseMessage": "",
  "virtualAccountData": {
    "partnerServiceId": "98829172",
    "customerNo": "30000000000000000001",
    "virtualAccountNo": "8473617259410240",
    "virtualAccountName": "Customer Name",
    "virtualAccountEmail": "",
    "virtualAccountPhone": "",
    "virtualAccountTrxType": "C",
    "trxId": "23219829714",
    "totalAmount": {
      "value": "11500.00",
      "currency": "IDR"
    },
    "billDetails": "",
    "freeTexts": "",
    "feeAmount": "",
    "additionalInfo": {
      "channel": "VIRTUAL_ACCOUNT_BCA"
    },
    "expiredDate": 1726371458
  }
}
Modified at 2025-03-26 10:50:15
Previous
Error Codes
Next
Inquiry Va