Payments Overview

General Payment Flow

The general flow for issuing an order and charging your customer:

  1. Set up webhooks for order.paid and order.failed events, so you can easily track successful and failed orders;
  2. To issue an order, send a POST request to /orders/. Details such as items sold, their price, and currency used are sent over this request. Note the success_redirect, in_progress_redirect, and failure_redirect fields in the response. These fields specify where to redirect the customer in case of the order success, progress, or failure. Invalid request data will result in a code 400 error;

Minimal request example data to issue an order:

{
    "client": {
        "email": "test@test.com"
    },
    "products": [
        {
        "price": 0.3,
        "title": "test"
        }
    ]
}

You can choose one of the following types of response to your request:

  • Minimum (default value): includes general order information (type, ID, currency, amount, status, etc.), transaction details, links to check-out forms, api_do_url;
  • Standard: additionally includes information about order products, client details, recurring card details, brand and website details, URL for success or failed/cancelled status, address verification service details, refund details;
  • Full: see the list of fields for the full response type in the "Model” tab for POST endpoint to /orders/.

The number of fields in the response depends on the selected response type. To select the type of response, you must specify the query parameter (?response_type=minimum, ?response_type=standard, or ?response_type=full) when creating a request. The minimum response type will be set by default if you do not specify this parameter in the request.

  1. In order to process the payment, choose one of the checkout options. The customer is then redirected back to the URL specified in success_redirect, in_progress_redirect, or failure_redirect fields appropriately.
  2. Your system receives either an order.payment_success or order.payment_failure event through webhooks.

Order Status

Status Descriptions
Paid The order has been successfully paid for
Failed The payment attempt for an order has failed. Failed is not a final status and additional payment attempts can be performed
Issued The order has been issued
In progress The payment attempt for an order is in progress
Viewed The customer has viewed the payform
Hold The customer's funds have been successfully blocked on their account. The merchant needs to capture or void this order. Will be automatically cancelled after 28 days if no action is taken
Overdue The order's due date has been reached (if set), new overdue payment attempts are still allowed
Expired The order's due date has been reached (if set), any overdue payment attempts will be declined.
Cancelled The order has been cancelled. This is a final status and all new payment attempts will be declined. This status is assigned if (1) a merchant has requested cancelation of the order; (2) a merchant has voided the previous hold of funds; (3) a merchant uses max_payment_attempts parameter and the customer has exceeded the allowed payment attempt tries unsuccessfully
Rejected A customer rejected to pay on the payform. This is a final status and all new payment attempts will be declined
Recieved The order has been paid outside the gateway and the merchant has marked it as "Received"
Refunded The payment for order has been refunded
Reversed The payment for order has been reversed
Refund initiated A refund has been initiated
Refund failed A refund has been failed to process
Refund reversed A refund manual cancellation has been made through the processing center
Reversal initiated A reversal has been initiated
Reversal failed A reversal has been failed to process
Chargeback A chargeback for the payment has been received (dispute related)
Representation A representation for the payment has been received (dispute related)
Retrieval A retrieval for the payment has been received (dispute related)
Pre-arbitration A pre-arbitration for the payment has been received (dispute related)
Arbitration An arbitration for the payment has been received (dispute related)
Pre-compliance A pre-compliance for the payment has been received (dispute related)
Compliance A compliance for the payment has been received (dispute related)
Good faith Good faith for the payment has been received (dispute related)
Fraud advice A fraud advice for the payment has been received (dispute related)
Created An order for payout has been created
Test A test order

Jump to
  • General Payment Flow
  • Order Status