Skip to main content

Contains detailed information about the payment.

id
string

Unique identifier for a payment

Example:

"p_xyz789abc123def456"

reconciliation_reference
string

Reference ID used for reconciling the payment.

Example:

"67612dd5d8efe547cb887d0d"

status
enum<string>

The current status of the payment:

  • draft: The payment has been created but not yet started.
  • initiating: The payment is being initiated and awaiting further steps.
  • pending_action: The payment requires an action from the customer or external system before it can proceed.
  • processing: The payment is actively being processed.
  • succeeded: The payment was completed successfully.
  • failed: The payment is failed.
  • cancelled: The payment was cancelled before completion.
  • expired: The payment has expired and can no longer be completed.
Available options:
draft,
initiating,
pending_action,
processing,
succeeded,
failed,
cancelled,
expired
Example:

"succeeded"

amount
integer

The amount to be charged in the smallest currency unit. For example, 20.00 ZAR is represented as 2000 cents. Learn more about minor units.

Example:

1000

currency
string

The ISO 4217 currency code for the payment.

Example:

"ZAR"

country
string

The country where the payment was initiated, represented in ISO 3166-1 alpha-2 format.

Example:

"ZA"

payment_method_details
Card · object

Details of the payment method used for the payment.

external_reference
string

External reference for reconciliation or tracking purposes. Must be unique within your merchant account.

Maximum string length: 255
Pattern: ^[a-zA-Z0-9_-]+$
Example:

"INV-2024-001"

last_payment_error
Last Payment Error · object

Details of the last error that occurred during a payment attempt.

mode
enum<string>

Indicates whether the payment is in live or test mode:

  • test: Used for testing and development. Payments are simulated, and no real transactions are processed.
  • live: Used in production to process real payments. Real credit cards and accounts are used, and actual transactions occur.
Available options:
live,
test
metadata
object

Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format. NEW Limitations:

  • Maximum 20 keys
  • Key names must be strings (max 40 characters)
  • Values must be strings (max 500 characters)
Example:
{
"customer_id": "cust_123456",
"order_id": "ord_789012"
}
created_at
string<date-time>

ISO 8601 timestamp when the resource was created

Example:

"2025-06-16T10:30:00Z"

updated_at
string<date-time>

ISO 8601 timestamp when the resource was last updated

Example:

"2025-06-16T10:30:00Z"