API references

Retrieve payment session

Retrieves a payment session by its ID. Returns the payment session details including payment status, amount, currency, and reference numbers.

Endpoint signature
POST https://api.reservepay.com/sdk/retrieve-payment-session HTTP/1.1
Content-Type: application/json
Accept: application/json
{
payment_session_id: string,
}
Returns: object
New to Reservepay? Read our guide on how to call endpoints to get started.
Request arguments
payment_session_id string

Required. The ID of the payment session to retrieve.

Response attributes
Attribute Description
amount
number

Always present. The payment amount in the smallest currency unit (e.g. cents for USD).

currency
string

Always present. The currency code for the payment amount (e.g. 'THB', 'USD').

payment_method
string

Always present. The name of the payment method.

payment_method_display_name
string

Always present. The display name of the payment method.

card_last_digits
string

Nullable. The ending digits of the card number. Null for non-card payment methods or card sessions without a token.

card_network
string

Nullable. The card network, such as visa or mastercard. Null for non-card payment methods or card sessions without a token.

installment_term
number

Nullable. Number of monthly installments for this payment. Null for non-installment payment methods.

interest_bearer
string

Nullable. Who bears the installment interest. Null for non-installment payment methods.

Possible values:
  • merchant
  • customer
installment_interest_rate
string

Nullable. The monthly interest rate charged to the customer, as a percentage on a 0-100 scale (e.g. 1.5 means 1.5% per month), snapshotted when the payment method was selected. 0.0 when the merchant bears the interest or the plan is interest-free; see interest_bearer. Null for non-installment payment methods.

installment_monthly_amount
number

Nullable. Amount charged to the customer per month, in the smallest currency unit. Null for non-installment payment methods.

installment_total_amount
number

Nullable. Total amount charged to the customer across all installments, in the smallest currency unit. Null for non-installment payment methods.

installment_total_interest_amount
number

Nullable. Total interest charged to the customer across all installments, in the smallest currency unit, derived from the rate snapshotted when the payment method was selected. 0 when the merchant bears the interest or the plan is interest-free; see interest_bearer. Null for non-installment payment methods.

installment_bank_name
string

Nullable. The name of the bank offering the installment plan. Null for non-installment payment methods.

installment_bank_display_name
string

Nullable. The display name of the bank offering the installment plan. Null for non-installment payment methods.

payment_authorized_at
string

Nullable. The date when the payment was authorized in ISO 8601 format. Null if payment has not been authorized.

payment_captured_at
string

Nullable. The date when the payment was captured in ISO 8601 format. Null if payment has not been captured.

payment_voided_at
string

Nullable. The date when the payment was voided in ISO 8601 format. Null if payment has not been voided.

status
string

Always present. The current status of the payment.

Possible values:
  • PENDING
  • INITIATED
  • SUCCESSFUL
  • FAILED
  • EXPIRED
payment_ref1
string

Nullable. First reference number for the payment. Can be used for external tracking or merchant-specific identifiers.

payment_ref2
string

Nullable. Second reference number for the payment. Can be used for external tracking or merchant-specific identifiers.

payment_ref3
string

Nullable. Third reference number for the payment. Can be used for external tracking or merchant-specific identifiers.

terminal_id
string

Nullable. The ID of the terminal that created the payment session, if any.

expires_at
number

Nullable. The expiration time of the payment as a Unix timestamp, or null if it does not expire.

Errors specific to this endpoint
NOT_FOUND

The payment session could not be found with the provided ID.

Errors common to all endpoints
UNHANDLED_ERROR

This error occurs when the server encounters an unexpected internal error that it cannot handle gracefully. This typically happens due to bugs, infrastructure issues, or edge cases that weren't anticipated during development.

INVALID_ARGUMENTS

This error occurs when the request contains invalid or missing parameters. Common cases include missing required fields, or values that don't match the expected format or type.

BAD_VERSION

This error occurs when making requests to an API version that is either deprecated or not yet released. This commonly happens when using an outdated SDK or when the API version specified in the request URL is incorrect.

CODE SAMPLES
curl
curl "https://api.reservepay.com/sdk/retrieve-payment-session" \
  -X POST
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -d '{
        "payment_session_id": "pse_01jz22vgekfrp101aw24f4g9dx"
      }'
Learn how to run these code samples in your terminal by reading our guide.