Registrasi

OVERVIEW


API Registrasi

API Registration (Registrasi) diperlukan agar Konsumen dapat melakukan pengaitan datanya untuk melakukan layanan transaksi pembayaran atau mengakses data miliknya. Data-data yang dikaitkan ini dapat beragam tergantung kebutuhan, seperti data kartu debit, kartu kredit, atau rekening.

SKENARIO PENGGUNAAN API REGISTRATION

Use Case Diagram API Card Registration (via PJP PIAS)

Use Case Diagram API Card Registration (Direct Integration)

Use Case Diagram API Account Registration

Merujuk pada use case diagram, Konsumen sebagai pemilik rekening atau kartu, dapat melakukan penautan rekening atau kartunya pada Non-PJP Pengguna Layanan, PJP AIns, dan/atau PJP PIAS untuk digunakan sebagai sumber dana dalam bertransaksi dan/atau untuk mengakses layanan lainnya seperti pengecekan saldo dan/atau pengecekan histori transaksi.

API Registrasi dapat digunakan dalam sejumlah skema sebagai berikut:

Skema 1: Indirect Integration (Konsumen – Non-PJP Pengguna Layanan / PJP AIns / PJP PIAS – PJP AIS)

Pada skema indirect integration, proses card registration dilakukan dengan cara PJP PIAS menginisiasi pembayaran sejumlah nominal tertentu. Apabila proses otorisasi yang dilakukan PJP AIS kepada Konsumen berhasil maka dapat diyakini kebenaran informasi detail kartu dan pemiliknya, sehingga dapat dilakukan card registration pada Non-PJP Pengguna Layanan, PJP AIns, dan/atau PJP PIAS. Selanjutnya, PJP PIAS menginisiasi pengembalian dana atas pembayaran (refund).

Skema 2: Direct Integration (Konsumen – Non-PJP Pengguna Layanan / PJP AIns / PJP PIAS – PJP AIS)

Pada skema direct integration, proses card registration dan account registration dilakukan dengan cara Non-PJP Pengguna Layanan, PJP AIns, atau PJP PIAS melakukan inisiasi validasi atas informasi kartu/rekening dan pemiliknya ke PJP AIS selaku penerbit kartu dan/atau rekening. Apabila proses validasi dan otorisasi yang dilakukan PJP AIS pada Konsumen berhasil, maka dapat diyakini kebenaran informasi detail kartu/rekening dan pemiliknya, sehingga dapat dilakukan card registration atau account registration pada Non-PJP Pengguna Layanan, PJP AIns, atau PJP PIAS.

Sejumlah API yang digunakan dalam skema-skema tersebut antara lain:

  • API Card Registration adalah layanan yang digunakan untuk mendaftarkan data kartu milik Konsumen pada Non-PJP Pengguna Layanan, PJP AIns, atau PJP PIAS. Kartu milik Konsumen tersebut diterbitkan oleh PJP AIS dan menjadi sumber dana Konsumen dalam bertransaksi dan/atau untuk mengakses layanan lainnya. API ini dapat disediakan oleh PJP yang melakukan registrasi kartu. Dalam hubungan bisnisB2Cdiperlukan proses verifikasi untuk memastikan kebenaran data konsumen.

    Dalam rangka melakukan validasi, dapat menggunakan mekanisme 3D Secure atau mekanisme validasi lainnya yang ditetapkan oleh penerbit kartu.

  • API Card Registration Inquiry dapat digunakan untuk menampilkan data kartu yang sudah diregistrasikan pada Non-PJP Pengguna Layanan, PJP AIns, atau PJP PIAS. Inquiry dapat dilakukan dengan memberikan informasi pengenal Konsumen.

  • API Verify OTP merupakan API yang digunakan untuk melakukan verifikasi OTP baik untuk registrasi kartu. Verifikasi OTP ini dilakukan khususnya untuk hubungan yang melibatkan Konsumen untuk memastikan kebenaran data Konsumen yang melakukan registrasi. API ini dapat disediakan oleh PJP AIS yang menerbitkan kartu. API Verify OTP juga bisa digunakan untuk API Pembayaran yang menggunakan sequence OTP.

  • API Card Registration Unbinding digunakan untuk melakukan penghapusan data kartu milik Konsumen yang telah diregistrasikan pada Non-PJP Pengguna Layanan, PJP AIns, atau PJP PIAS. Penghapusan data kartu dilakukan dengan memasukkan data kartu yang akan dihapuskan penautannya.

  • API Account Creation dapat digunakan oleh Konsumen untuk pembuatan akun pada PJP AIS melalui PJP AIns, PJP PIAS, dan/atau Non-PJP Pengguna Layanan. API ini digunakan dalam hubungan B2C (Business to Customer).

  • API Account Binding adalah layanan yang digunakan untuk mendaftarkan data akun yang diterbitkan oleh PJP AIS yang menjadi sumber dana transaksi atau dalam rangka mengakses layanan lainnya oleh Konsumen pada PJP AIns dan/atau PJP PIAS. API ini digunakan dalam B2C (Business to Customer). Dalam hubungan bisnisB2Cdiperlukan proses verifikasi/otentikasi untuk memastikan kebenaran data Konsumen.

  • API Account Binding Inquiry dapat digunakan untuk menampilkan data rekening yang sudah diregistrasikan pada Non-PJP Pengguna Layanan, PJP AIns, dan/atau PJP PIAS. Inquiry dapat dilakukan dengan memberikan informasi pengenal konsumen.

  • API Account Unbinding digunakan untuk melakukan penghapusan data rekening milik Konsumen yang telah diregistrasikan pada Non-PJP Pengguna Layanan, PJP AIns, atau PJP PIAS. Penghapusan data rekening dilakukan dengan memasukkan data rekening yang akan dihapuskan penautannya.

Penyelenggaraan layanan pembayaran berbasis kartu termasuk pengelolaan datanya tunduk pada ketentuan yang diberlakukan oleh Penerbit/Prinsipal Kartu (seperti PCIDSS).

Sequence Diagram API Card Registration (via PJP PIAS)

Sequence Diagram API Card Registration (Direct Integration)

Informasi Umum

Service Code 01
Name API Card Registration
Version 1.0
HTTP Method POST
Path …/{version}/registration-card-bind

Informasi Umum

Service Code 02
Name API Card Registration – Set Limit
Version 1.0
HTTP Method POST
Path …/{version}/registration/card-bind-limit

Sequence Diagram API Card Registration Inquiry

Informasi Umum

Service Code 03
Name API Card Registration Inquiry
Version 1.0
HTTP Method GET
Path …/{version}/registration-card-inquiry

Sequence Diagram API OTP Validation (Direct Integration)

Informasi Umum

Service Code 04
Name API Verify OTP (Direct Integration)
Version 1.0
HTTP Method POST
Path …/{version}/otp-verification

Sequence Diagram API Card Registration Unbinding

Informasi Umum

Service Code 05
Name API Card Registration Unbinding
Version 1.0
HTTP Method POST
Path …/{version}/registration-card-unbind

Sequence Diagram API Account Creation

Informasi Umum

Service Code 06
Name API Account Creation
Version 1.0
HTTP Method POST
Path .../{version}/registration-account-creation

Sequence Diagram API Account Binding

Informasi Umum

Service Code 07
Name API Account Binding
Version 1.0
HTTP Method POST
Path .../{version}/registration-account-binding

Sequence Diagram API Account binding inquiry

Informasi Umum

Service Code 08
Name API Account Binding Inquiry
Version 1.0
HTTP Method POST
Path .../{version}/registration-account-inquiry

Sequence Diagram API Account Unbinding

Informasi Umum

Service Code 09
Name API Account Unbinding
Version 1.0
HTTP Method POST
Path .../{version}/registration-account-unbinding

Informasi Umum

Service Code 10
Name API Get Oauth URL
Version 1.0
HTTP Method GET
Path ../{version}/get-auth-code

Sequence Diagram API OTP

Informasi Umum

Service Code 81
Name API OTP
Version 1.0
HTTP Method POST
Path .../{version}/otp

GUIDES


Spesifikasi Parameter Header dan Body API Registrasi

Request Body

Parameter Data Type Mandatory Length Description
partnerReferenceNo String O 64 Transaction identifier on partner system
accountName String O 128 Customer’s
full name.
cardData Encrypted Object Refer to Standard Symmetric Encryption on Security Standard Document section 2.1.9
bankAccountNo String O 32 Account number
bankCardNo String M 19 Card number
bankCardType String O 2 Type of the
card (D –
Debit, C –
Credit, UE – Uang Electronik).
dateOfBirth String O 8 Customer’s
date of birth
(YYYYMMD
D).
email String O 254 RFC 3696 Length 254 after “<” and “>”
expiredDatetime Datetime O Format: ISO 8601 Expiry date
expiryDate String O 4 Card expiry date.
Format: MMYY
identificationNo String O 64 Customer’s
ID number
identificationType String O 2 Type of ID
(01 -
passport, 02 –
eKTP&KTP,
03-TKTP, 04-
SIM (Driver
License), 99 –
Others)
custIdMerchant String M 18 Merchant’s customer ID
isBindAndPay String O 1 Landing Page this value is always ‘N’
merchantId String O 64 Merchant identifier that is
unique per each merchant
terminalId String O 16 identifier that is unique per
each merchant
journeyId String O 32 An identifier to uniquly identify a journey. On the first request of the journey, this must be equal to the X-EXTERNAL-ID.
subMerchantId String O 32 Sub merchant ID
externalStoreId String O 64 Exkternal Store ID
limit decimal O 17,3 Daily transaction limit
merchantLogoUrl String O 300 Merchant’s logo URL for webview
phoneNo String O 16 Customer’s phone number
Format: 62xxxxxxxxxxxxx
sendOtpFlag String O 3 "YES" or "NO" to use OTP from PJSP
type String O 20 Action type
additionalInfo Object O Additional information

Response Body

Parameter Data Type Mandatory Length Description
responseCode String M 7 Response code
responseMessage String M 150 Response description
referenceNo String O 64 Transaction identifier on service provider system.
Must be filled upon successful transaction
partnerReferenceNo String O 64 Transaction identifier on service consumer system
bankCardToken String M 128 Card token
for payment.
chargeToken String O 40 string code for verification OTP
randomString String O 16 Random String to generate validation for webview
tokenExpiryTime String O 25 Time when
the token will be expired. Time when
the token will
be expired.
Format: ISO-8601
additionalInfo Object O Additional information

Request Body

Parameter Data Type Mandatory Length Description
partnerReferenceNo String O 64 Transaction identifier on partner system
bankAccountNo String O 32 Account number
bankCardNo String O 19 Card number
limit decimal O 17,3 Daily transaction limit
bankCardToken String M 128 Card token
for payment.
otp String O 8 OTP Code / Passcode
additionalInfo Object O Additional information

Response Body

Parameter Data Type Mandatory Length Description
responseCode String M 7 Response code
responseMessage String M 150 Response description
referenceNo String O 64 Transaction identifier on service provider system.
Must be filled upon successful transaction
partnerReferenceNo String O 64 Transaction identifier on service consumer system
additionalInfo Object O Additional information

Request Body

Parameter Parameter Type Data Type Mandatory Length Description
custIdMerchant Path param String M 18 Merchant’s customer ID

Response Body

Parameter Data Type Mandatory Length Description
responseCode String M 7 Response code
responseMessage String M 150 Response description
accountList Array of Objects -
accountData Object -
accountId String O 16 Account ID
createdDate String O 26 Creation date
credentialNo String O 16 Credential number
credentialType String O 2 Credential type
maxLimit String O 6 Maximum limit
status String O 4 status
additionalInfo Object O Additional information

Request Body

Parameter Data Type Mandatory Length Description
originalPartnerReferenceNo String O 64 Transaction identifier on service consumer system
originalReferenceNo String O 64 Transaction identifier on service provider system
action String O 10 action
merchantId String O 64 Merchant ID
otp String O 8 OTP Code / Passcode
chargeToken String O 40 OTP string code that is to be verified with the passcode obtained by the user
type String O 20 Action type
additionalInfo Object O Additional information

Response Body

Parameter Data Type Mandatory Length Description
responseCode String M 7 Response code
responseMessage String M 150 Response description
originalReferenceNo String O 64 Transaction identifier on service provider system that echo from request.
originalPartnerReferenceNo String O 64 Transaction identifier on service consumer system
accountNo String O 11 Customer’s account number
bankCardToken String O 128 Card token
for payment
cardPan String O 16 Card number
customerId String O 45 Customer’s identification
email String O 254 RFC 3696 Length 254 after “<” and “>”
expiredDatetime String O 25 Expired time
expiryDate String O 4 Card expiry date.
Format: MMYY
identificationNo String O 64 registered national id number on bank account
linkageToken String O 204 Token used for
PIN redirection
API
phoneNo String O 16 Customer’s phone number.
Format: 62xxxxxxxxxxxxx
qParamsURL String O 100 Webview URL to set PIN
process
qParams Object O - Params used to
set PIN
identification
action String O 10 Action type OTP
sendOtpFlag String O 3 Flag of using PJSP’s OTP or not. (“YES” or “NO”)
subscribeDatetime String O 25 Subscription time
tokenExpiryTime String O 25 Time when
the token will
be expired.
transactionTimestamp String O 25 Random String to generate validation for webview
additionalInfo Object O Additional information

Request Body

Parameter Data Type Mandatory Length Description
partnerReferenceNo String O 64 Transaction identifier on service consumer system
token String M 128 This is an alphanumeric field which contains the
payment token used in a transaction. This field is used during setting token daily limit, purchase, and delete token.
This token represent token number of card or token.
bankCardNo String O 19 Card number of the cardholder
type String O 20 Request type.
Example: subscribe, unsubscribe, check OTP
part String O 64 Merchant identifier that is
unique per each merchant
merchantId String O 64 Merchant identifier that is
unique per each merchant
subMerchantId String O 32 Sub merchant ID
terminalId String O 16 identifier that is unique per
each merchant
tokenRequestorId String O 15 An identifier to uniquely identify the token requestor.
journeyID String O 32 An identifier to uniquly identify a journey. On the first request of the journey, this must be equal to the X-EXTERNAL-ID.
transactionDate Int O 8 date of
transaction.
Format: YYYYMMDD
ISO 8601
additionalInfo Object O Additional information

Response Body

Parameter Data Type Mandatory Length Description
responseCode String M 7 Response code
responseMessage String M 150 Response description
referenceNo String O 64 Transaction identifier on service provider system. Must be filled upon successful transaction
partnerReferenceNo String O 64 Transaction identifier on service consumer system
message String O 255 Response message
customerId String O 45 Customer ID
unsubscribeDate Datetime O Unsubscribe date.
Format: ISO 8601
additionalInfo Object O Additional information

Request Body

Parameter Data Type Mandatory Length Description
partnerReferenceNo String O 64 Transaction identifier on service consumer system
countryCode String O 2 Requestor’s country code
customerId String O 45 account ID of the customer
deviceInfo Object O -
os String O 40 Device’s OS
osVersion String O 40 Device’s OS version
model String O 40 Device’s model
manufacturer String O 40 Device’s manufacturer
email String O 254 RFC 3696 Length 254 after “<” and “>”
lang String O 8 language support parameter
locale String O 5 Locale and language that customer selected in app
name String O 128 User’s name
onboardingPartner String O 8 Onboarding partner of the customer
phoneNo String O 16 User’s phone number.
Format: 62xxxxxxxxxxxxx
redirectUrl String O 2048 Merchant call back URL
scopes String O 256 The scopes of the authorization
seamlessData String O 512 the structure for the mobile and verification information,the value should be URLencoded.
seamlessSign String O 512 the signature data for the seamleassData, the value should be URLencoded
state String O 32 state
merchantId String O 64 Merchant identifier that is
unique per each merchant
subMerchantId String O 32 Sub merchant ID
terminalType Object O 32 Indicates the source terminal type and how the redirect will happen
additionalInfo Object O Additional information

Response Body

Parameter Data Type Mandatory Length Description
responseCode String M 7 Response code
responseMessage String M 150 Response description
referenceNo String C 64 Transaction identifier on service provider system. Must be filled upon successful transaction
partnerReferenceNo String O 64 Transaction identifier on service consumer system
authCode String O 64 the auth code used to get accessToken and agreementToken
apiKey Numeric O N/A Customer ID
accountId String O 32 User’s account id
state String O 32 state
additionalInfo Object O Additional information

Request Body

Parameter Data Type Mandatory Length Description
partnerReferenceNo String O 64 Transaction identifier on service consumer system
action String O 10 Action type for OTP
additionalData Object O -
userId String O 20 User ID of the card holder
email String O 254 RFC 3696 Length 254 after “<” and “>”
postalAddress String O 99 Postal address of the user
authCode String O 64 An authorization code which the caller can used to obtain an access token.
grantType String O 64 The accessToken could be granted by authCode or refreshToken.
isBindAndPay String O 1 Landing Page this value is always ‘N’
lang String O 8 Initiate language
locale String O 5 Locale and language that customer selected in app
merchantId String M 64 Merchant identifier that is
unique per each merchant
subMerchantId String O 32 Sub merchant ID
msisdn String O 15 Phone number to be binded
otp String O 8 OTP Value
phoneNo String O 16 User’s phone number.
Format: 62xxxxxxxxxxxxx
platformType String O 4 Merchant
platform type
(App, PC, or
mobile web)
redirectUrl String O 2048 Redirect URL
For Agreement
page or PIN
page
referenceId String O 36 Reference Id
from previous
Generate OTP
refreshToken String O 64 Refresh token, which is used to refresh the access token.
successParams Object O -
accountId string O 36 account ID given to the user
terminalId String O 16 Terminal identifier
tokenRequestorId String O 15 Token Requestor ID
additionalInfo Object O Additional information

Response Body

Parameter Data Type Mandatory Length Description
responseCode String M 7 Response code
responseMessage String M 150 Response description
referenceNo String C 64 Transaction identifier on service provider system. Must be filled upon successful transaction
partnerReferenceNo String O 64 Transaction identifier on service consumer system
accountToken String O 128 Account Token for Payment
accessTokenInfo Object O -
accessToken String O 32 Access token
expiresIn String O 25 Datetime of token expiration.
Format: ISO 8601
refreshToken String O 64 Refresh token, which is used to refresh the access token.
reExpiresIn String O 25 Datetime of refresh token expiration.
Format: ISO 8601
tokenStatus String O 25 Status of token
linkId String O 24 Identifier provided at the time of linking
nextAction String O 255 redirect the user to this url forauthentication
linkageToken String O 204 Token used for
PIN redirection
API
params Object O - Params used for
set PIN
identification
action String O 10 Action type OTP
pinWebViewUrl String O 100 URL for set PIN
process
redirectToDeeplink String O 255 redirect the user to this deeplink in app for authentication. This is only valid in case of App Redirection Flow
redirectUrl String O 2048 Redirect URL
for
Agreement
page or PIN
page
userInfo Object O -
publicUserId String O 20 User ID
additionalInfo Object O Additional information

Request Body

Parameter Data Type Mandatory Length Description
partnerReferenceNo String O 64 Transaction identifier on service consumer system
additionalInfo Object O Additional information

Response Body

Parameter Data Type Mandatory Length Description
responseCode String M 7 Response code
responseMessage String M 150 Response description
referenceNo String C 64 Transaction identifier on service provider system. Must be filled upon successful transaction
partnerReferenceNo String O 64 Transaction identifier on service consumer system
accountCurrency String O 3 Currency of registered Account
accountName String O 50 Registered account name
accountNo String O 13 Registered account number
accountTransactionLimit Numeric O 19,2 Max debit amount
endDatePeriod String O 10 Binding end period.
Format: YYYY-MM-DD
startDatePeriod String O 10 Binding start period.
Format: YYYY-MM-DD
additionalInfo Object O Additional information

Request Body

Parameter Data Type Mandatory Length Description
partnerReferenceNo String O 64 Transaction identifier on service consumer system
linkId String O 24 Identifier provided at the time of linking
merchantId String M 64 Merchant identifier that is
unique per each merchant
subMerchantId String O 32 Sub merchant ID
tokenId String O 128 Access Token
ID
additionalInfo Object O Additional information

Response Body

Parameter Data Type Mandatory Length Description
responseCode String M 7 Response code
responseMessage String M 150 Response description
referenceNo String C O 64 Transaction identifier on service provider system. Must be filled upon successful transaction
partnerReferenceNo String O 64 Transaction identifier on service consumer system
merchantId String O 64 Merchant identifier that is
unique per each merchant
subMerchantId String O 32 Sub merchant ID
linkId String O 24 Identifier provided at the time of linking
unlinkResult String O 64 Result of unlinking process
additionalInfo Object O Additional information

Request Body

Parameter Data Type Mandatory Length Description
redirectUrl String M 256 URL yang digunakan sebagai callback setelah proses getAuthCode berhasil.
scopes List M 256 Scope akses dari authorization yang di inginkan.
state String M 32 Random string untuk keperluan perlindungan terhadap CSRF
merchantId String O 64 Merchant identifier that is
unique per each merchant
subMerchantId String O 32 Sub merchant ID
lang String O 2 Kode Bahasa yang layanan. ISO 639-1
allowRegistration Boolean O If value equals true, provider may enable registration process during binding.
Default true.
seamlessData String O 512 Data yang diperuntukan untuk mempercepat proses otentikasi
mobileNumber String O 18 Nomor telpon pengguna, apabila field ini terisi maka user wajin login dengan nomor yang sudah disertakan
verifiedTime String O ISO-8601 Value yang menyatakan bahwa nomor ponsel yang sudah disertakan dalam seamless data sudah diverifikasi kepemilikannya dan tidak memerlukan verifikasi OTP oleh pihak penyedia. Validitas dari verifikasi ini hanya 10 menit.
externalUid String O 32 ID milik user pada aplikasi partner
deviceId String O 32 Device ID milik User
seamlessSign String C 512 Signature dari seamless data yang disertakan.

Cara menyertakan seamless data:

seamlessData = URLEncode({“mobileNumber”=”62822999999”})

Cara menyertakan seamlessSign

seamlessSign = URLEncode(sign(seamlessData))

  • Partner menggukan private key untuk membuat seamless sign, sedangakan pihak penyedia akan menggukan publick key milik partner untuk proses verifikasi.
  • Jika proses verifikasi gagal, maka seamless data akan diabaikan.
  • Charset dari URL Encode menggunakan UTF-8

Konstruksi URL:

../{version}/get-auth-code?state=<RANDOM_UNIQUE>&scopes=QUERY_BALANCE,PUBLIC_ID&redirectUrl=<MERCHANT_OAUTH_CALLBACK_URL>&seamlessData=<SEAMLESS_DATA>&seamlessSign=<SIGNATURE>

Response Body

Parameter Data Type Mandatory Length Description
responseCode String M 7 Response code
responseMessage String M 150 Response description
authCode S M 256 Authcode yang dapat ditukarkan dengan access token pada API account binding
state String ME 32 Random string untuk keperluan perlindungan terhadap CSRF

Request Body

Parameter Data Type Mandatory Length Description
partnerReferenceNo String O 64 Transaction identifier on partner system
journeyID String M 32 An identifier to uniquly identify a journey. On the first request of the journey, this must be equal to the X-EXTERNAL-ID.
merchantId String O 64 Merchant ID
subMerchant String O 32 Sub merchant ID
externalStoreId String O 64 External Store ID
trxDateTime Date O 25 PJP internal system datetime with timezone, which follows the ISO-8601 standard
bankCardToken String M 128 Card token
for payment.
otpTrxCode String 2
otpReasonCode String O 2
otpReasonMessage String O 30
additionalInfo Object O Additional information

Response Body

Parameter Data Type Mandatory Length Description
responseCode String M 7 Response code
responseMessage String M 150 Response description
referenceNo String O 64 Transaction identifier on service provider system.
partnerReferenceNo String O 64 Transaction identifier on service consumer system
chargeToken String M 40 string code for verification OTP
additionalInfo Object O Additional information

CODE SNIPPETS


Code Snippets API Registrasi

Sample Request

POST …/v1.0/registration-card-bind HTTP/1.2
Content-type: application/json
Authorization: Bearer gp9HjjEj813Y9JGoqwOeOPWbnt4CUpvIJbU1mMU4a11MNDZ7Sg5u9a"
X-TIMESTAMP: 2020-12-17T10:55:00+07:00
X-SIGNATURE: 85be817c55b2c135157c7e89f52499bf0c25ad6eeebe04a986e8c862561b19a5
ORIGIN: www.hostname.com
X-PARTNER-ID: 82150823919040624621823174737537
X-EXTERNAL-ID: 41807553358950093184162180797837
X-IP-ADDRESS: 172.24.281.24
X-DEVICE-ID: 09864ADCASA
X-LATITUDE: -6.1617169
X-LONGITUDE: 106.6643946
CHANNEL-ID: 95221

{
   "partnerReferenceNo":"2020102900000000000001",
   "accountName":"John Doe",
   "cardData":"UIdFgZi9BhWx9Scbz/YK+JiMsPiKyhAFDaIRQe0wxMZYhu1rn73cQfgRGllEJjZlsoevALAzajD6qm2mG47kwsjN9tcArzlVAYS/jVflUn+zkiaMKuIxWQYJbB6MpET8Y0PjYB4aEkCvgxjP1wBcQMTVisCt5J7NCHetYAY64ucgxhBNCpCC6cG+3nCIuGqriq8/7EwhjpZ11YcDWecJ8glecZSv4HfjYZIFVXlwZD9rROd6xPgdKuVYVAAH8Y0pMH/x45FouvcuTuNIYOG26/btaUIRRnpkZsfzB4LPAk6CIQ/xia0rrWBwy479iXcV58q90u1ic1j0tuultFRCPmobf4N6AF5XXoERr3TOb7bJyjwodTpeQy+myzCDDidQmkKwNWOliQJdSjI+vHSi37ZfY1jlygnmaD1vQmblIj4= [SA(1] ",
   "custIdMerchant":"0012345679504",
   "isBindAndPay":"N",
   "merchantId":"00007100010926 ",
   "terminalId":"72001126",
   "journeyId":"20190329175623MTISTORE",
   "subMerchantId":"310928924949487",
   "externalStoreId":"000183004658",
   "limit":"1000000",
   "merchantLogoUrl":"https://bilba.test.com/dist/img/merchant-logo.png",
   "phoneNo":"08238748728423",
   "sendOtpFlag":"YES",
   "type":"subcribe",
   "additionalInfo":{
      "deviceId":"12345679237",
      "channel":"mobilephone"
   }
}

Sample Response

Content-type: application/json
X-TIMESTAMP: 2020-12-17T10:55:06+07:00

{
   "responseCode":"2000100",
   "responseMessage":"Request has been processed successfully",
   "referenceNo":"2020102977770000000009",
   "partnerReferenceNo":"2020102900000000000001",
   "bankCardToken":"6d7963617264746f6b656e",
   "chargeToken":"abcd63617264746f6b656e",
   "randomString":"g4BoEz43jfjVvAvN",
   "tokenExpiryTime":"2020-12-17T11:00:00+07:00",
   "additionalInfo":{
      "deviceId":"12345679237",
      "channel":"mobilephone"
   }
}

Sample Request

POST …/v1.0/registration-card-inquiry HTTP/1.2
Content-type: application/json
Authorization: Bearer gp9HjjEj813Y9JGoqwOeOPWbnt4CUpvIJbU1mMU4a11MNDZ7Sg5u9a"
X-TIMESTAMP: 2020-12-17T10:55:00+07:00
X-SIGNATURE: 85be817c55b2c135157c7e89f52499bf0c25ad6eeebe04a986e8c862561b19a5
ORIGIN: www.hostname.com
X-PARTNER-ID: 82150823919040624621823174737537
X-EXTERNAL-ID: 41807553358950093184162180797837
X-IP-ADDRESS: 172.24.281.24
X-DEVICE-ID: 09864ADCASA
X-LATITUDE: -6.1617169
X-LONGITUDE: 106.6643946
CHANNEL-ID: 95221

{
   "partnerReferenceNo":"2020102900000000000001",
   "bankAccountNo":"93802938408123",
   "bankCardNo":"3984029384023984",
   "limit":"1000000",
   "bankCardToken":"6d7963617264746f6b656e",
   "otp":"12345678",
   "additionalInfo":{
      "deviceId":"12345679237",
      "channel":"mobilephone"
   }
}

Sample Response

Content-type: application/json
X-TIMESTAMP: 2020-12-17T10:55:06+07:00

{
   "responseCode":"2000200",
   "responseMessage":"Request has been processed successfully",
   "referenceNo":"2020102977770000000009",
   "partnerReferenceNo":"2020102900000000000001",
   "additionalInfo":{
      "deviceId":"12345679237",
      "channel":"mobilephone"
   }
}

Sample Request

GET …/v1.0/registration-card-inquiry/custIdMerchant/8a95f0026d2860f301 HTTP/1.2
Content-type: application/json
Authorization: Bearer gp9HjjEj813Y9JGoqwOeOPWbnt4CUpvIJbU1mMU4a11MNDZ7Sg5u9a"
X-TIMESTAMP: 2020-12-17T11:43:00+07:00
X-SIGNATURE: 85be817c55b2c135157c7e89f52499bf0c25ad6eeebe04a986e8c862561b19a5
ORIGIN: www.hostname.com
X-PARTNER-ID: 82150823919040624621823174737537
X-EXTERNAL-ID: 41807553358950093184162180797837
X-IP-ADDRESS: 172.24.281.24
X-DEVICE-ID: 09864ADCASA
X-LATITUDE: -6.1617169
X-LONGITUDE: 106.6643946
CHANNEL-ID: 95221

Sample Response

Content-type: application/json
X-TIMESTAMP: 2020-12-17T11:43:03+07:00

{
   "responseCode":"2000300",
   "responseMessage":"Request has been processed successfully",
   "accountList":[
      {
         "accountData":{
            "accountId":"F8FP2WQWEATXFP8K",
            "createdDate":"2018-12-17T11:59:06+07:00",
            "credentialNo":"************0750",
            "credentialType":"DC",
            "maxLimit":"800000",
            "status":"ACT"
         }
      }
   ],
   "additionalInfo":{
      "deviceId":"12345679237",
      "channel":"mobilephone"
   }
}

Sample Request

POST …/v1.0/otp-verification HTTP/1.2
Content-type: application/json
Authorization: Bearer gp9HjjEj813Y9JGoqwOeOPWbnt4CUpvIJbU1mMU4a11MNDZ7Sg5u9a"
X-TIMESTAMP: 2020-12-17T13:20:00+07:00
X-SIGNATURE: 85be817c55b2c135157c7e89f52499bf0c25ad6eeebe04a986e8c862561b19a5
ORIGIN: www.hostname.com
X-PARTNER-ID: 82150823919040624621823174737537
X-EXTERNAL-ID: 41807553358950093184162180797837
X-IP-ADDRESS: 172.24.281.24
X-DEVICE-ID: 09864ADCASA
X-LATITUDE: -6.1617169
X-LONGITUDE: 106.6643946
CHANNEL-ID: 95221

{
   "originalPartnerReferenceNo":"2020102900000000000001",
   "originalReferenceNo":"2020102977770000000009",
   "action":"otpLinkage",
   "merchantId":"00001",
   "otp":"12345678",
   "chargeToken":"TOK_TKNCPPPHUVL3IJVAXZI5GG4WBEC77YZ6::ADVQ",
   "type":"Subscribe",
   "additionalInfo":{
      "deviceId":"12345679237",
      "channel":"mobilephone",
      "phoneNo":"081275647382"
   }
}

Sample Response

Content-type: application/json
X-TIMESTAMP: 2020-12-17T13:20:04+07:00

{
   "responseCode":"2000400",
   "responseMessage":"Request has been processed successfully",
   "originalReferenceNo":"2020102977770000000009",
   "originalPartnerReferenceNo":"2020102900000000000001",
   "accountNo":"12345678910",
   "bankCardToken":"6d7963617264746f6b656e",
   "cardPan":"2123123123125356",
   "customerId":"afhw6d7963617264746f6b656e963617264746f6b656e",
   "email":"john.doe@email.com",
   "expiredDatetime":"2019-02-24T14:12:25.871+07:00",
   "expiryDate":"1219",
   "identificationNo":"2020102020202000011001",
   "linkageToken":"xswe56",
   "phoneNo":"0899345678864332",
   "qParamsURL":"https://setPin",
   "qParams":{
      "action":"otpLinkage"
   },
   "sendOtpFlag":"YES",
   "subscribeDatetime":"2017-02-24T14:12:25.871+07:00",
   "tokenExpiryTime":"2017-02-24T14:12:25.871+07:00",
   "transactionTimestamp":"g4BoEz43jfjVvAvN",
   "additionalInfo":{
      "deviceId":"12345679237",
      "channel":"mobilephone"
   }
}

Sample Request

POST …/v1.0/registration-card-unbind HTTP/1.2
Content-type: application/json
Authorization: Bearer gp9HjjEj813Y9JGoqwOeOPWbnt4CUpvIJbU1mMU4a11MNDZ7Sg5u9a"
X-TIMESTAMP: 2020-12-17T13:50:00+07:00
X-SIGNATURE: 85be817c55b2c135157c7e89f52499bf0c25ad6eeebe04a986e8c862561b19a5
ORIGIN: www.hostname.com
X-PARTNER-ID: 82150823919040624621823174737537
X-EXTERNAL-ID: 41807553358950093184162180797837
X-IP-ADDRESS: 172.24.281.24
X-DEVICE-ID: 09864ADCASA
X-LATITUDE: -6.1617169
X-LONGITUDE: 106.6643946
CHANNEL-ID: 95221

{
   "partnerReferenceNo":"2020102900000000000001",
   "token":"g4JeIz43jfjVvAvNxswe56g4JeIz43jfjVvAvNxswe56g4JeIz43jfjVvAvNxswe56g4JeIz43jfjVvAvNxswe56g4JeIz43jfjVvAvNxswe56g4Jg4JeIz43jfdsEga",
   "bankCardNo":"2123123123125356",
   "type":"Unsubscribe",
   "part":"00007100010926",
   "merchantId":"00007100010926",
   "subMerchantId":"23489182303312",
   "terminalId":"310928924949487",
   "tokenRequestorId":"7127425327776087324915228",
   "journeyID":"20190329175623MTISTORE",
   "transactionDate":"2020-12-17T13:50:00+07:00",
   "additionalInfo":{
      "deviceId":"12345679237",
      "channel":"mobilephone"
   }
}

Sample Response

Content-type: application/json
X-TIMESTAMP: 2020-12-17T13:50:04+07:00

{
   "responseCode":"2000500",
   "responseMessage":"Request has been processed successfully",
   "referenceNo":"2020102977770000000009",
   "partnerReferenceNo":"2020102900000000000001",
   "customerId":"ae75e364134cdb2c7a4159106e38ca6b761983859dbv1",
   "unsubscribeDate":"2020-12-17T13:50:04+07:00",
   "additionalInfo":{
      "deviceId":"12345679237",
      "channel":"mobilephone"
   }
}

Sample Request

POST …/v1.0/registration-account-creation HTTP/1.2
Content-type: application/json
Authorization: Bearer gp9HjjEj813Y9JGoqwOeOPWbnt4CUpvIJbU1mMU4a11MNDZ7Sg5u9a"
X-TIMESTAMP: 2020-12-17T14:49:00+07:00
X-SIGNATURE: 85be817c55b2c135157c7e89f52499bf0c25ad6eeebe04a986e8c862561b19a5
ORIGIN: www.hostname.com
X-PARTNER-ID: 82150823919040624621823174737537
X-EXTERNAL-ID: 41807553358950093184162180797837
X-IP-ADDRESS: 172.24.281.24
X-DEVICE-ID: 09864ADCASA
X-LATITUDE: -6.1617169
X-LONGITUDE: 106.6643946
CHANNEL-ID: 95221

{
   "partnerReferenceNo":"2020102900000000000001",
   "countryCode":"ID",
   "customerId":"00-abcdefghijklmnopqrstuvwxyz0123456789-11",
   "deviceInfo":{
      "os":"IOS",
      "osVersion":"1",
      "model":"Iphone",
      "manufacture":"Apple"
   },
   "email":"john.doe@email.com",
   "lang":"ID",
   "locale":"en_ID",
   "name":"John doe",
   "onboardingPartner":"GOJEKXXX",
   "phoneNo":"0899345678864332",
   "redirectUrl":"https://merchant.site.com/apptoken",
   "scopes":"QUERY_BALANCE,QUERY_PROFILE",
   "seamlessData": "{\"mobile\":\"62-882345678\",\"verifiedTime\":\"2001-07-04T12:08:56+05:30\",\"externalUid\":\"TIXxxxxxUID\",\"reqTime\":\"2001-07-04T12:08:56+05:30\",\"riskData\":{\"fuzzyDeviceId\":\"k+OrCqw7QMNxlrT3qU2m0TRYTucd+nrMH2izjtltJgLqNI2XZgEAAA\",\"terminalType\":\"APP\",\"riskFlag\":\"00110\",\"realIp\":\"123.23.12.111\"}}",
   "seamlessSign" "URLEncode(BASE64(sigin( "{\"mobile\":\"62-882345678\",\"verifiedTime\":\"2001-07-04T12:08:56+05:30\",\"externalUid\":\"TIXxxxxxUID\",\"reqTime\":\"2001-07-04T12:08:56+05:30\",\"riskData\":{\"fuzzyDeviceId\":\"k+OrCqw7QMNxlrT3qU2m0TRYTucd+nrMH2izjtltJgLqNI2XZgEAAA::\",\"terminalType\":\"APP\",\"riskFlag\":\"00110\",\" realIp\":\"123.23.12.111\"}}" )))",
   "state":"12345556666",
   "merchantId":"00007100010926",
   "subMerchantId":"310928924949487",
   "terminalType":"SYSTEM",
   "additionalInfo":{
      "deviceId":"12345679237",
      "channel":"mobilephone"
   }
}

Sample Response

Content-type: application/json
X-TIMESTAMP: 2020-12-17T13:50:04+07:00

{
   "responseCode":"2000600",
   "responseMessage":"Request has been processed successfully",
   "referenceNo":"2020102977770000000009",
   "partnerReferenceNo":"2020102900000000000001",
   "authCode":"g4JeIz43jfjVvAvNxswe56g4JeIz43jfjVvAvNxswe56g4JeIz43jfjVvAvNxswe56g4JeIz43jfjVvAvNxswe56g4JeIz43jfjVvAvNxswe56g4Jg4JeIz43jfdsEga",
   "apiKey":"AB12-CD34-EFGHIJ567890",
   "accountId":"ABCD1234-EF56-GH78-IJ90-KLMNOP123456",
   "state":"12345556666",
   "additionalInfo":{
      "deviceId":"12345679237",
      "channel":"mobilephone"
   }
}

Sample Request

POST …/v1.0/registration-account-binding HTTP/1.2
Content-type: application/json
Authorization: Bearer gp9HjjEj813Y9JGoqwOeOPWbnt4CUpvIJbU1mMU4a11MNDZ7Sg5u9a"
X-TIMESTAMP: 2020-12-18T13:43:31+07:00
X-SIGNATURE: 85be817c55b2c135157c7e89f52499bf0c25ad6eeebe04a986e8c862561b19a5
ORIGIN: www.hostname.com
X-PARTNER-ID: 82150823919040624621823174737537
X-EXTERNAL-ID: 41807553358950093184162180797837
X-IP-ADDRESS: 172.24.281.24
X-DEVICE-ID: 09864ADCASA
X-LATITUDE: -6.1617169
X-LONGITUDE: 106.6643946
CHANNEL-ID: 95221

{
   "partnerReferenceNo":"2020102900000000000001",
   "action":"otpLinkage",
   "additionalData":{
      "userId":"John Doe",
      "email":"john.doe@email.com",
      "postalAddress":"134346"
   },
   "authCode":"4b203fe6c11548bcabd8da5bb087a83b",
   "grantType":"AUTHORIZATION_CODE",
   "isBindAndPay":"N",
   "lang":"EN",
   "locale":"en_ID",
   "merchantId":"00007100010926",
   "subMerchantId":"310928924949487",
   "msisdn":"+62812345678901",
   "otp":"34564367",
   "phoneNo":"0899345678864332",
   "platformType":"app",
   "redirectUrl":"merchantapp://main_page",
   "referenceId":"08400000814-08400000814",
   "refreshToken":"201208134b203fe6c11548bcabd8da5bb087a83b ",
   "successParams":{
      "accountId":"ABCD1234-EF56-GH78-IJ90-KLMNOP123456"
   },
   "terminalId":"ID",
   "tokenRequestorId":"e-commerceA",
   "additionalInfo":{
      "deviceId":"12345679237",
      "channel":"mobilephone"
   }
}

Sample Response

Content-type: application/json
X-TIMESTAMP: 2020-12-18T13:43:37+07:00
X-SIGNATURE: 85be817c55b2c135157c7e89f52499bf0c25ad6eeebe04a986e8c862561b19a5

{
   "responseCode":"2000700",
   "responseMessage":"Request has been processed successfully",
   "referenceNo":"2020102977770000000009",
   "partnerReferenceNo":"2020102900000000000001",
   "accountToken":"1Fhas7281han862=",
   "accessTokenInfo":{
      "accessToken":"ublicpBa869cad0990e4e17a57ecf7c5469a4b2",
      "expiresIn":"2021-07-04T12:08:56+05:30",
      "refreshToken":"201208134b203fe6c11548bcabd8da5bb087a83b",
      "reExpiresIn":"2051-07-04T12:08:56+05:30",
      "tokenStatus":"ACTIVE"
   },
   "linkId":"abcd1234efgh5678ijkl9012",
   "nextAction":"https://gopayapi.com/validate/otp/abcd123456789",
   "linkageToken":"xswe56",
   "params":{
      "action":"otpLinkage",
      "pinWebViewUrl":"https://setPin",
      "redirectToDeeplink":"https://gopayapi.com/redirect/gopay/abcd123456789"
   },
   "redirectUrl":" https://www.merchantapi.com/redirect/abcd123456789",
   "userInfo":{
      "publicUserId":"20180626111215830192DANAW3ID965200060630"
   },
   "additionalInfo":{
      "deviceId":"12345679237",
      "channel":"mobilephone"
   }
}

Sample Request

POST …/v1.0/registration-account-inquiry HTTP/1.2
Content-type: application/json
Authorization: Bearer gp9HjjEj813Y9JGoqwOeOPWbnt4CUpvIJbU1mMU4a11MNDZ7Sg5u9a"
X-TIMESTAMP: 2020-12-18T14:39:21+07:00
X-SIGNATURE: 85be817c55b2c135157c7e89f52499bf0c25ad6eeebe04a986e8c862561b19a5
ORIGIN: www.hostname.com
X-PARTNER-ID: 82150823919040624621823174737537
X-EXTERNAL-ID: 41807553358950093184162180797837
X-IP-ADDRESS: 172.24.281.24
X-DEVICE-ID: 09864ADCASA
X-LATITUDE: -6.1617169
X-LONGITUDE: 106.6643946
CHANNEL-ID: 95221

{
   "partnerReferenceNo":"2020102900000000000001",
   "additionalInfo":{
      "deviceId":"12345679237",
      "channel":"mobilephone"
   }
}

Sample Response

Content-type: application/json
X-TIMESTAMP: 2020-12-18T14:39:30+07:00

{
   "responseCode":"2000800",
   "responseMessage":"Request has been processed successfully",
   "referenceNo":"2020102977770000000009",
   "partnerReferenceNo":"2020102900000000000001",
   "accountCurrency":"IDR",
   "accountName":"Alen Miucic",
   "accountNo":"11231271284140",
   "accountTransactionLimit":"1000000",
   "endDatePeriod":"2022-05-21",
   "startDatePeriod":"2020-05-21",
   "additionalInfo":{
      "deviceId":"12345679237",
      "channel":"mobilephone"
   }
}

Sample Request

POST …/v1.0/registration-account-unbinding HTTP/1.2
Content-type: application/json
Authorization: Bearer gp9HjjEj813Y9JGoqwOeOPWbnt4CupvIJbU1Mmu4a11MNDZ7Sg5u9a”
X-TIMESTAMP: 2020-12-18T14:48:11+07:00
X-SIGNATURE: 85be817c55b2c135157c7e89f52499bf0c25ad6eeebe04a986e8c862561b19a5
ORIGIN: www.hostname.com
X-PARTNER-ID: 82150823919040624621823174737537
X-EXTERNAL-ID: 41807553358950093184162180797837
X-IP-ADDRESS: 172.24.281.24
X-DEVICE-ID: 09864ADCASA
X-LATITUDE: -6.1617169
X-LONGITUDE: 106.6643946
CHANNEL-ID: 95221

{
   "partnerReferenceNo":"2020102900000000000001",
   "linkId":"abcd1234efgh5678ijkl9012",
   "merchantId":"00007100010926",
   "subMerchantId":"310928924949487",
   "tokenId":"Aeox320xvijwefop10",
   "additionalInfo":{
      "deviceId":"12345679237",
      "channel":"mobilephone"
   }
}

Sample Response

Content-type: application/json
X-TIMESTAMP: 2020-12-18T14:48:30+07:00

{
   "responseCode":"2000900",
   "responseMessage":"Request has been processed successfully",
   "referenceNo":"2020102977770000000009",
   "partnerReferenceNo":"2020102900000000000001",
   "merchantId":"00007100010926",
   "subMerchantId":"310928924949487",
   "linkId":"abcd1234efgh5678ijkl9012",
   "unlinkResult":"success",
   "additionalInfo":{
      "deviceId":"12345679237",
      "channel":"mobilephone"
   }
}

Sample Request

GET …/v1.0/get-auth-code?state=WodkkwijSDs &scopes=QUERY_BALANCE,PUBLIC_ID&redirectUrl=https://domain.com/authSuccess.htm&seamlessData=%7B%22mobileNumber%22%3A%2262822999999999%22%7D&seamlessSign=gsfIUuC%2Bzs101rRFUhzz9753s9Dj4wg0EtwLwr8fMhZmCFybaCcwvAXGZ0RDxqzb9fJuFre%2Bmsi9JcwHICVx%2FB1onruQNldI4Y%2BUZqVQLgUVz1ynAa1qyyaTKliXOfy3t%2FbOhXd0QfZ3e1zbQT5
Content-type: application/json
Authorization: Bearer gp9HjjEj813Y9JGoqwOeOPWbnt4CupvIJbU1Mmu4a11MNDZ7Sg5u9a”
Authorization-Customer: Bearer fa8sjjEj813Y9JGoqwOeOPWbnt4CupvIJbU1Mmu4a11MNDZ7Sg5u9a”
X-TIMESTAMP: 2020-12-23T09:10:11+07:00
X-SIGNATURE: 85be817c55b2c135157c7e89f52499bf0c25ad6eeebe04a986e8c862561b19a5
ORIGIN: www.hostname.com
X-PARTNER-ID: 82150823919040624621823174737537
X-EXTERNAL-ID: 41807553358950093184162180797837
X-IP-ADDRESS: 172.24.281.24
X-DEVICE-ID: 09864ADCASA
X-LATITUDE: -6.108841
X-LONGITUDE: 106.7782137
CHANNEL-ID: 95221

Sample Response

Content-type: application/json
X-TIMESTAMP: 2020-12-23T09:10:18+07:00

{
   "responseCode":"2001000",
   "responseMessage":"Request has been processed successfully",
   "authCode":"a4sd5a4fsaf5d5f4df66ad85f4",
   "state":"WodkkwijSDs"
}

Sample Request

POST …/v1.0/otp HTTP/1.2
Content-type: application/json
Authorization: Bearer gp9HjjEj813Y9JGoqwOeOPWbnt4CUpvIJbU1mMU4a11MNDZ7Sg5u9a"
Authorization-Customer: Bearer fa8sjjEj813Y9JGoqwOeOPWbnt4CUpvIJbU1mMU4a11MNDZ7Sg5u9a"
X-TIMESTAMP: 2020-12-22T07:53:16+07:00
X-SIGNATURE: 85be817c55b2c135157c7e89f52499bf0c25ad6eeebe04a986e8c862561b19a5
ORIGIN: www.hostname.com
X-PARTNER-ID: 82150823919040624621823174737537
X-EXTERNAL-ID: 41807553358950093184162180797837
X-IP-ADDRESS: 172.24.281.24
X-DEVICE-ID: 09864ADCASA
X-LATITUDE: -6.1617169
X-LONGITUDE: 106.6643946
CHANNEL-ID: 95221

{
   "partnerReferenceNo":"2020102900000000000001",
   "journeyID":"20190329175623MTISTORE",
   "merchantId":"00001",
   "subMerchant":"310928924949487",
   "externalStoreId":"124928924949487",
   "trxDateTime":"2020-12-21T14:56:11+07:00",
   "bankCardToken":"6d7963617264746f6b656e",
   "otpTrxCode":"",
   "otpReasonCode":"",
   "otpReasonMessage":"",
   "additionalInfo":{
      "deviceId":"12345679237",
      "channel":"mobilephone"
   }
}

Sample Response

Content-type: application/json
X-TIMESTAMP: 2020-12-22T07:53:21+07:00

{
   "responseCode":"2008100",
   "responseMessage":"Request has been processed successfully",
   "referenceNo":"2020102977770000000009",
   "partnerReferenceNo":"2020102900000000000001",
   "chargeToken":"abcd63617264746f6b656e",
   "additionalInfo":{
      "deviceId":"12345679237",
      "channel":"mobilephone"
   }
}

RESPONSES CODE


Response status merupakan informasi yang diberikan oleh service provider kepada service consumer pada response body, sebagai indikasi hasil dari pemrosesan request yang diterima.

Response status terdiri dari 2 komponen, yaitu kode (response code) dan deskripsinya (response message).

Komponen Tipe Data Length Keterangan
responseCode String 7 response code = HTTP status code + service code + case code
responseMessage String 150
Daftar Response Code
Category HTTP Code Service Code Case Code Response Message Description
Success 200 any 00 Successful Successful
Success 202 any 00 Request In Progress Transaction still on process
System 400 any 00 Bad Request General request failed error, including message parsing failed.
Message 400 any 01 Invalid Field Format {field name} Invalid format
Message 400 any 02 Invalid Mandatory Field {field name} Missing or invalid format on mandatory field
System 401 any 00 Unauthorized. [reason] General unauthorized error (No Interface Def, API is Invalid, Oauth Failed, Verify Client Secret Fail, Client Forbidden Access API, Unknown Client, Key not Found)
System 401 any 01 Invalid Token (B2B) Token found in request is invalid (Access Token Not Exist, Access Token Expiry)
System 401 any 02 Invalid Customer Token Token found in request is invalid (Access Token Not Exist, Access Token Expiry)
System 401 any 03 Token Not Found (B2B) Token not found in the system. This occurs on any API that requires token as input parameter
System 401 any 04 Customer Token Not Found Token not found in the system. This occurs on any API that requires token as input parameter
Business 403 any 00 Transaction Expired Transaction expired
System 403 any 01 Feature Not Allowed [Reason] This merchant is not allowed to call Direct Debit APIs
Business 403 any 02 Exceeds Transaction Amount Limit Exceeds Transaction Amount Limit
Business 403 any 03 Suspected Fraud Suspected Fraud
Business 403 any 04 Activity Count Limit Exceeded Too many request, Exceeds Transaction Frequency Limit
Business 403 any 05 Do Not Honor Account or User status is abnormal
System 403 any 06 Feature Not Allowed At This Time. [reason] Cut off In Progress
Business 403 any 07 Card Blocked The payment card is blocked
Business 403 any 08 Card Expired The payment card is expired
Business 403 any 09 Dormant Account The account is dormant
Business 403 any 10 Need To Set Token Limit Need to set token limit
System 403 any 11 OTP Blocked OTP has been blocked
System 403 any 12 OTP Lifetime Expired OTP has been expired
System 403 any 13 OTP Sent To Cardholer initiates request OTP to the issuer
Business 403 any 14 Insufficient Funds Insufficient Funds
Business 403 any 15 Transaction Not Permitted.[reason] Transaction Not Permitted
Business 403 any 16 Suspend Transaction Suspend Transaction
Business 403 any 17 Token Limit Exceeded Purchase amount exceeds the token limit set prior
Business 403 any 18 Inactive Card/Account/Customer Indicates inactive account
Business 403 any 19 Merchant Blacklisted Merchant is suspended from calling any APIs
Business 403 any 20 Merchant Limit Exceed Merchant aggregated purchase amount on that day exceeds the agreed limit
Business 403 any 21 Set Limit Not Allowed Set limit not allowed on particular token
Business 403 any 22 Token Limit Invalid The token limit desired by the merchant is not within the agreed range between the merchant and the Issuer
Business 403 any 23 Account Limit Exceed Account aggregated purchase amount on that day exceeds the agreed limit
Business 404 any 00 Invalid Transaction Status Invalid transaction status
Business 404 any 01 Transaction Not Found Transaction not found
System 404 any 02 Invalid Routing Invalid Routing
System 404 any 03 Bank Not Supported By Switch Bank not supported by switch
Business 404 any 04 Transaction Cancelled Transaction is cancelled by customer
Business 404 any 05 Merchant Is Not Registered For Card Registration Services Merchant is not registered for Card Registration services
System 404 any 06 Need To Request OTP Need to request OTP
System 404 any 07 Journey Not Found The journeyID cannot be found in the system
Business 404 any 08 Invalid Merchant Merchant does not exist or status abnormal
Business 404 any 09 No Issuer No issuer
System 404 any 10 Invalid API Transition Invalid API transition within a journey
Business 404 any 11 Invalid Card/Account/Customer [info]/Virtual Account Card information may be invalid, or the card account may be blacklisted, or Virtual Account number maybe invalid.
Business 404 any 12 Invalid Bill/Virtual Account [Reason] The bill is blocked/ suspended/not found.
Virtual account is suspend/not found.
Business 404 any 13 Invalid Amount The amount doesn't match with what supposed to
Business 404 any 14 Paid Bill The bill has been paid
System 404 any 15 Invalid OTP OTP is incorrect
Business 404 any 16 Partner Not Found Partner number can't be found
Business 404 any 17 Invalid Terminal Terminal does not exist in the system
Business 404 any 18 Inconsistent Request Inconsistent request parameter found for the same partner reference number/transaction id
It can be considered as failed in transfer debit, but it should be considered as success in transfer credit.
Considered as success:
- Transfer credit = (i) Intrabank transfer; (ii) Interbank transfer; (iii) RTGS transfer; (iv) SKNBI transfer;
- Virtual account = (i) Payment VA; (ii) Payment to VA;
- Transfer debit = (i) Refund payment; (ii) Void;
Considered as failed:
- Transfer credit = (i) Transfer to OTC;
- Transfer debit = (i) Direct debit payment; (ii) QR CPM payment; (iii) Auth payment; (iv) Capture;
Business 404 any 19 Invalid Bill/Virtual Account The bill is expired.
Virtual account is expired.
System 405 any 00 Requested Function Is Not Supported Requested function is not supported
Business 405 any 01 Requested Opearation Is Not Allowed Requested operation to cancel/refund transaction Is not allowed at this time.
System 409 any 00 Conflict Cannot use same X-EXTERNAL-ID in same day
System 409 any 01 Duplicate partnerReferenceNo Transaction has previously been processed indicates the same partnerReferenceNo already success
System 429 any 00 Too Many Requests Maximum transaction limit exceeded
System 500 any 00 General Error General Error
System 500 Any 01 Internal Server Error Unknown Internal Server Failure, Please retry the process again
System 500 Any 02 External Server Error Backend system failure, etc
System 504 any 00 Timeout timeout from the issuer

APLIKASI PENGUJIAN