Create Payment Session
Request a windowed time of payment session
Method and URL
POST [BASE_URL]/v2/payments
Request
Payment UI
Pivot's Payment UI
{
"clientReferenceId": "1751612565",
"amount": {
"value": 10000,
"currency": "IDR"
},
"paymentType": "SINGLE",
"mode": "REDIRECT",
"bypassStatusPage": false,
"redirectUrl": {
"successReturnUrl": "https://merchant.com/success",
"failureReturnUrl": "https://merchant.com/failure",
"expirationReturnUrl": "https://merchant.com/expiration"
},
"customer": {
"givenName": "Reforza Jordan",
"surname": "Geotama",
"email": "reforza@pivot-payment.com",
"phoneNumber": {
"countryCode": "+62",
"number": "89699990001"
},
"refundPreference": {
"method": "AUTO",
"transferDestination": {
"channelCode": "014",
"channelInformation": {
"accountNumber": "17677665415",
"accountName": "Reforza Jordan Geotama"
}
}
}
},
"orderInformation": {
"productDetails": [
{
"type": "PHYSICAL",
"category": "FASHION",
"subCategory": "FASHION WANITA",
"name": "Dress Kasual Warna Putih",
"description": "Ukuran M",
"quantity": 1,
"price": {
"value": 100000,
"currency": "IDR"
}
}
],
"billingInfo": {
"givenName": "Reforza Jordan",
"surname": "Geotama",
"email": "reforza@pivot-payment.com",
"phoneNumber": {
"countryCode": "+62",
"number": "89699990001"
},
"addressLine1": "Biomedical Building Lantai 3",
"addressLine2": "Digital hub, BSD City",
"city": "Tangerang Regency",
"provinceState": "Banten",
"country": "ID",
"postalCode": "15331"
},
"shippingInfo": {
"givenName": "Reforza Jordan",
"surname": "Geotama",
"email": "reforza@pivot-payment.com",
"phoneNumber": {
"countryCode": "+62",
"number": "89699990001"
},
"addressLine1": "Biomedical Building Lantai 3",
"addressLine2": "Digital hub, BSD City",
"city": "Tangerang Regency",
"provinceState": "Banten",
"country": "ID",
"postalCode": "15331",
"method": "REGULAR",
"shippingFee": {
"value": 100000,
"currency": "IDR"
}
}
},
"autoConfirm": false,
"statementDescriptor": "Reforza Pivot",
"expiryAt": "2025-12-30T23:59:00Z",
"metadata": {
"invoiceNo": "INV001"
}
}Card Payment Method
If you plan to embed our Payment Redirection page using an iframe, please submit your website domain to us for whitelisting
Pivot's Payment Redirection
{
"clientReferenceId": "1751610085",
"amount": {
"value": 10000,
"currency": "IDR"
},
"paymentType": "SINGLE",
"paymentMethod": {
"type": "CARD"
},
"paymentMethodOptions": {
"card": {
"captureMethod": "automatic", // "MANUAL" for Capture later
"threeDsMethod": "CHALLENGE" // "NEVER" for Non 3DS
}
},
"mode": "REDIRECT",
"bypassStatusPage": false,
"redirectUrl": {
"successReturnUrl": "https://merchant.com/success",
"failureReturnUrl": "https://merchant.com/failure",
"expirationReturnUrl": "https://merchant.com/expiration"
},
"customer": {
"givenName": "Reforza Jordan",
"surname": "Geotama",
"email": "reforza@pivot-payment.com",
"phoneNumber": {
"countryCode": "+62",
"number": "89699990001"
},
"refundPreference": {
"method": "AUTO",
"transferDestination": {
"channelCode": "014",
"channelInformation": {
"accountNumber": "17677665415",
"accountName": "Reforza Jordan Geotama"
}
}
}
},
"orderInformation": {
"productDetails": [
{
"type": "PHYSICAL",
"category": "FASHION",
"subCategory": "FASHION WANITA",
"name": "Dress Kasual Warna Putih",
"description": "Ukuran M",
"quantity": 1,
"price": {
"value": 100000,
"currency": "IDR"
}
}
],
"billingInfo": { // Mandatory for Foreign Card with AVS
"givenName": "Reforza Jordan",
"surname": "Geotama",
"email": "reforza@pivot-payment.com",
"phoneNumber": {
"countryCode": "+62",
"number": "89699990001"
},
"addressLine1": "Biomedical Building Lantai 3",
"addressLine2": "Digital hub, BSD City",
"city": "Tangerang Regency",
"provinceState": "Banten",
"country": "ID",
"postalCode": "15331"
},
"shippingInfo": {
"givenName": "Reforza Jordan",
"surname": "Geotama",
"email": "reforza@pivot-payment.com",
"phoneNumber": {
"countryCode": "+62",
"number": "89699990001"
},
"addressLine1": "Biomedical Building Lantai 3",
"addressLine2": "Digital hub, BSD City",
"city": "Tangerang Regency",
"provinceState": "Banten",
"country": "ID",
"postalCode": "15331",
"method": "REGULAR",
"shippingFee": {
"value": 100000,
"currency": "IDR"
}
}
},
"autoConfirm": true,
"statementDescriptor": "Reforza Pivot",
"expirationMode": "STRICT",
"expiryAt": "2025-12-30T23:59:00Z",
"metadata": {
"invoiceNo": "INV001"
}
}Merchant's customized Payment Page — Card Encryption
How to build reference: Card Customized Payment Page (Encryption)
{
"clientReferenceId": "1751620870",
"amount": {
"value": 10000,
"currency": "IDR"
},
"paymentType": "SINGLE",
"paymentMethod": {
"type": "CARD"
},
"mode": "API",
"redirectUrl": {
"successReturnUrl": "https://merchant.com/success",
"failureReturnUrl": "https://merchant.com/failure",
"expirationReturnUrl": "https://merchant.com/expiration"
},
"customer": {
"givenName": "Reforza Jordan",
"surname": "Geotama",
"email": "reforza@pivot-payment.com",
"phoneNumber": {
"countryCode": "+62",
"number": "89699990001"
},
"refundPreference": {
"method": "AUTO",
"transferDestination": {
"channelCode": "014",
"channelInformation": {
"accountNumber": "17677665415",
"accountName": "Reforza Jordan Geotama"
}
}
}
},
"orderInformation": {
"productDetails": [
{
"type": "PHYSICAL",
"category": "FASHION",
"subCategory": "FASHION WANITA",
"name": "Dress Kasual Warna Putih",
"description": "Ukuran M",
"quantity": 1,
"price": {
"value": 100000,
"currency": "IDR"
}
}
],
"billingInfo": { // Mandatory for Foreign Card with AVS
"givenName": "Reforza Jordan",
"surname": "Geotama",
"email": "reforza@pivot-payment.com",
"phoneNumber": {
"countryCode": "+62",
"number": "89699990001"
},
"addressLine1": "Biomedical Building Lantai 3",
"addressLine2": "Digital hub, BSD City",
"city": "Tangerang Regency",
"provinceState": "Banten",
"country": "ID",
"postalCode": "15331"
},
"shippingInfo": {
"givenName": "Reforza Jordan",
"surname": "Geotama",
"email": "reforza@pivot-payment.com",
"phoneNumber": {
"countryCode": "+62",
"number": "89699990001"
},
"addressLine1": "Biomedical Building Lantai 3",
"addressLine2": "Digital hub, BSD City",
"city": "Tangerang Regency",
"provinceState": "Banten",
"country": "ID",
"postalCode": "15331",
"method": "REGULAR",
"shippingFee": {
"value": 100000,
"currency": "IDR"
}
}
},
"autoConfirm": false,
"statementDescriptor": "Reforza Pivot",
"expirationMode": "STRICT",
"expiryAt": "2025-12-30T23:59:00Z",
"metadata": {
"invoiceNo": "INV001"
}
}Save Card with Pivot's Payment Redirection (Card Tokenization)
Initiation
Enable "Save Payment Information Detail" option for your customers when the Charge is SUCCESS We will save your Customer's Payment Information Detail in Token format under your Customer Object
How to build reference: Pay and Save Card (Tokenization)
Use Tokenized Card
Reuse your customers' saved Payment Information details so that they can check out faster
Stored Payment Method links to your customerId
Save Card with Merchant's customized Payment Page (Card Tokenization)
Initiation
Enable "Save Payment Information Detail" option for your customers when the Charge is SUCCESS We will save your Customer's Payment Information Detail in Token format under your Customer Object
How to build reference: Pay and Save Card (Tokenization)
Use Tokenized Card
Reuse your customers' saved Payment Information details so that they can check out faster
Stored Payment Method links to your customerId
E-Wallet Payment Method
channel = DANA doesn't support to embed page using an iframe
Virtual Account Payment Method
Virtual Account Static with Merchant's customized Payment Page
How to build reference: Build Static Payment
Make sure virtualAccountNumber within our default Static Range or your Configuration range:
https://dashboard.pivot-payment.com/static-payment/virtual-account/range
QR Payment Method
QR Static with Merchant's customized Payment Page
How to build reference: Build Static Payment
Detail Parameter Request
clientReferenceId
Alphanumeric
1-100
M
Unique Payment Reference from Merchant's Request
paymentType
String
-
O
Default to SINGLE
Payment Type possible values are:
SINGLE
MULTIPLE
Definition:
SINGLE: Payment Session can only be charged onceMULTIPLE: Payment Session can be charged multiple times, and Payment Session Status is alwaysActive
Applicable only for Payment Method Type QR and VIRTUAL_ACCOUNT
saveForFutureUse
Boolean
-
O
Store Payment Information detail in Token format in Customer Object for CARD & EWALLET Payment method whenever the charge is SUCCESS
Default to false Possible values are:
true
false
showSavedPayment
Boolean
-
O
Show saved Payment Information for CARD & EWALLET Payment method in Payment Redirection
Default to false, applicable only for REDIRECT mode
Possible values are:
true
false
mode
String
-
O
Default to REDIRECT
Payment Session mode. Possible values are:
REDIRECT will return redirectUrl
API
bypassStatusPage
Boolean
-
O
Bypass Pivot's Status Page after your customer completing the Payment, directly redirect to your URLs
Default to false, applicable only for REDIRECT mode
Possible values are:
true
false
customerId
String
0-255
O
Auto generated based on email as the unique identifier *Choose either to send customerId or customer Object
customer
Object
-
C
Customer Object Customer information *Choose either to send customerId or customer Object
autoConfirm
Boolean
-
O
Default to true
If the confirmation method is set to false. Then clients need to hit the /confirm endpoint
statementDescriptor
String
0-20
O
Default = Merchant’s short name
Statement descriptors allow a maximum 20 characters for all the concatenated characters (including space).
It will be shown on invoice, receipt, and for payment methods that support custom descriptors, it will be shown on the customer's bank statement.
expirationMode
String
-
O
Default to LOOSE
Payment Type possible values are:
LOOSE
STRICT
Definition:
LOOSE: Expiry depends on processor rulesSTRICT: Expiry depends on merchant rules
Applicable only for Payment Method Type CARD and EWALLET
expiryAt
String
-
O
Session expired time set by merchant with format YYYY-MM-DDTHH:MM:SSZ. The default expiration time is 15 mins.
For Payment Type = MULTIPLE, don't necessarily send the Expiry At value
metadata
Object
-
O
Free object for merchant to store any extra information about the payment session
Response
Payment UI
Card Payment Method
E-Wallet Payment Method
Virtual Account Payment Method
QR Payment Method
Detail Parameter Response
Last updated