Skip to main content
POST
Create a payment request

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json
description
string
required

Description of the payment request

Maximum string length: 255
Example:

"Premium payment for policy #POL-2025-001"

reference
string
required

Client-supplied identifier for reconciliation

Maximum string length: 255
Example:

"ORD-2025-001"

amount
integer
required

Amount in smallest currency unit

Required range: x >= 1
Example:

125000

currency
string
required

ISO 4217 currency code (3 uppercase letters)

Required string length: 3
Pattern: ^[A-Z]{3}$
Example:

"USD"

requires_tokenization
boolean
default:false

Whether this payment request requires tokenization of the payment method

allows_tokenization
boolean
default:false

Whether this payment request allows tokenization of the payment method

payer_id
string | null

ID of the payer to associate with this payment request

Maximum string length: 255
Example:

"pyr_AbC123XyZ"

payment_method_id
string | null

ID of an existing payment method to use (must belong to the payer if payer_id is provided)

Maximum string length: 255
Example:

"pm_AbC123XyZ"

idempotency_key
string | null

Client-supplied idempotency key; reuse is allowed only after the prior request failed or was canceled

Maximum string length: 255
Example:

"idem_ord_2025_001"

metadata
object | null

Optional metadata as key-value pairs

Example:

Response

Payment request created.

id
string
Example:

"prq_AbC123XyZ"

status
enum<string>

Current status of the payment request

Available options:
RequiresPaymentMethod,
RequiresAction,
Processing,
Authorized,
Succeeded,
Failed,
Canceled
Example:

"RequiresPaymentMethod"

amount
integer

Amount in smallest currency unit

Example:

125000

currency
string

ISO 4217 currency code

Example:

"USD"

payer_id
string | null

ID of the payer associated with this payment request

Example:

"pyr_AbC123XyZ"

description
string
Example:

"Premium payment for policy #POL-2025-001"

reference
string

Client-supplied identifier

Example:

"ORD-2025-001"

idempotency_key
string | null

Client-supplied idempotency key set at creation

Maximum string length: 255
Example:

"idem_ord_2025_001"

requires_tokenization
boolean

Whether this payment request requires tokenization of the payment method

Example:

false

allows_tokenization
boolean

Whether this payment request allows tokenization of the payment method

Example:

false

payment_method
object | null

Payment method associated with this payment request

session_identifier
string

External session identifier for this payment request

Example:

"prq_AbC123XyZ_abc123..."

shipping_address
object | null

Shipping address for this payment request

failure_code
string | null

Error code if the payment request failed

Example:

"card_declined"

failure_message
string | null

Human-readable error message if the payment request failed

Example:

"Card was declined"

expires_at
string<date-time> | null

When the payment request expires

Example:

"2025-12-31T23:59:59Z"

completed_at
string<date-time> | null

When the payment request was completed

Example:

"2025-10-08T18:25:00Z"

ip_address
string | null

IP address of the client making the payment

Example:

"192.168.1.1"

user_agent
string | null

User agent string of the client making the payment

Example:

"Mozilla/5.0..."

metadata
object | null

Optional metadata as key-value pairs

Example:
created_at
string<date-time>
Example:

"2025-10-08T18:20:31Z"

updated_at
string<date-time>
Example:

"2025-10-08T18:25:00Z"

Last modified on June 14, 2026