Skip to main content
POST
Create v1 (Legacy)

Authorizations

Authorization
string
header
required

JWT issued by POST /api/v1.1/access-token/b2b. Send Authorization: Bearer <token>.

X-PARTNER-ID
string
header
required

Merchant API key (Credential.api_key). Required on every request.

Path Parameters

account_id
string
required

Account identifier in ULID format.

Body

application/json
amount
number
required

Payment amount. Minimum and maximum limits depend on merchant configuration and selected e-wallet vendor.

Example:

100000

ewallet_vendor
string
required

E-wallet vendor code. Must be an active vendor in the e-wallet payment group.

Example:

"EWALLET_DANA"

expired_at
string<date-time> | null

Optional expiration datetime. When provided, must be later than the current time.

Example:

"2026-04-02T23:59:59+07:00"

customer_name
string | null

Customer name for the checkout.

Maximum string length: 255
Example:

"John Doe"

customer_email
string<email> | null

Customer email for the checkout.

Maximum string length: 255
Example:

"john.doe@example.com"

customer_phone
string

Customer phone number. Required for some vendors (for example OVO push-to-pay).

Maximum string length: 20
Example:

"081234567890"

merchant_redirect_url
string<uri> | null

Optional URL to redirect the customer after payment flow completion.

Maximum string length: 2048
Example:

"https://merchant.example.com/payment/return"

merchant_reff_no
string | null

Optional merchant reference number for this transaction.

Maximum string length: 255
Example:

"INV-2026-001"

Response

Checkout created

status
integer
required

HTTP status code.

Example:

200

success
boolean
required

Indicates whether the request was successful.

Example:

true

data
object
required

E-wallet transaction resource payload.