B2B
How to generate token B2B
API Endpoint
To get access token, you need to hit this API endpoint :
Service Code
73
HTTP Method
POST
Path
/authorization/v1/access-token/b2b`
API Request Header to get Token
X-SIGNATURE: Pxlv2IIUVdlzdUnbSQqug8YeghmKXJ7Rw5P4xBOOB/tC457UsoZXkO4S1R3oszVcjZDSh38+==
X-TIMESTAMP: 2022-10-07T14:18:39+07:00
X-CLIENT-KEY: MCH-0008-1296507211683
Content-Type: application/json
Request Header Explanation
X-Signature
string
Mandatory
Non-Repudiation & Integrity checking X-Signature : with asymmetric signature algorithm SHA256withRSA (Private_Key, stringToSign)
stringToSign = client_ID + “|” + X- TIMESTAMP
X-Timestamp
string
Mandatory
Timestamp request on UTC time in ISO8601 UTC+0 format. It means to proceed transaction on UTC+7 (WIB), merchant need to subtract time with 7. Ex: to proceed transaction on September 22th 2020 at 08:51:00 WIB, the timestamp should be 2020-09-22T01:51:00Z
X- Client-Key
string
Mandatory
Client’s client_id (PJP Name) (given at completion registration process)
Merchant to DOKU : client_id merchant
Acquirer to DOKU : client_key given by DOKU
DOKU to Acquirer : client_key given by acquirer.
content-type
string
Mandatory
String represents indicate the media type of the resource (e.g. application/json, application/pdf)
API Request Body
Here is the sample of request body to Get Token :
{
"grantType":"client_credentials"
}
```
Request Body Explanation
grantType
String
Mandatort
“client_credentials” : The client can request an access token using only its client credentials (or other supported means of authentication) when the client is requesting access to the protected resources under its control (OAuth 2.0: RFC 6749 & 6750)
API Response Body
API Response Header
After hitting the above API Request, DOKU will give the response below
HTTP Status
200
Result
Success
X-CLIENT-KEY: "MCH-0008-1296507211683",
X-TIMESTAMP: "2022-10-07T14:26:50+07:00"
X-Timestamp
String
Mandatory
Client's current local time in YYYY-MM-DDTHH:mm:ssZ format
X-Client-Key
String
Mandatory
Client’s client_id (PJP Name) (given at completion registration process)
Merchant to DOKU : client_id merchant.
DOKU to Acquirer : client_key given by acquirer.
Acquirer to DOKU : client_key given by DOKU
API Response Body
{
"responseCode": "2007300",
"responseMessage": "Successful",
"accessToken": "eyJhbGciOiJSUzI1NiJ9.eyJleHAiOjE2NjUxMjc3OTEsIm5iZiI6MTY2NTEyNjg5MSwiaXNzIjoiRE9LVSIsImlhdCI6",
"tokenType": "Bearer",
"expiresIn": 900,
"additionalInfo": ""
}
responseCode
String (6)
Mandatory
Response Code :
HTTP status code + service code + case code
responseMessage
String
Mandatory
Response Description
accessToken
String (2048)
Mandatory
A string representing an authorization issued to the client that used to access protected resources.
tokenType
String
Mandatory
The access token type provides the client with the information required to successfully utilize the access token to make a protected resource request (along with type-specific attributes). Token Type Value: “Bearer”: includes the access token. string in the request “Mac”: issuing a Message. Authentication Code (MAC) key together with the access token that is used to sign certain components of the HTTP requests. Reference: OAuth2.0 RFC 6749 & 6750
expiresIn
String
Mandatory
Session expiry in seconds : 900 (15 minute )
additionalInfo
String
Optional
Additional Information
Error Response
For several error cases, the response appear would be like below :
"responseCode": "4017300",
"responseMessage": "Unauthorized. Unknown Client"
Last updated
Was this helpful?