Skip to main content

One-off payments

A one-off payment is a single payment where the customer provides their payment details during checkout.

With Revup, the integration consists of four main steps:

  1. Create an order through the Revup API.
  2. Collect the customer's payment details using the Revup SDK.
  3. Submit the payment.
  4. Handle the payment result.

The same Revup SDK can also be used when integrating token-based payments and subscriptions. The difference between these payment flows is what happens after the initial payment.

Payment flow​

1. Create an order​

The first step is to create an order through the Revup API.

The order contains the information required to process the payment, such as:

  • Amount
  • Currency
  • Description
  • Customer information
  • Country
  • Browser information

Payment card details are not included in the order. They are collected securely through the Revup SDK on the payment page.

When the order is created successfully, Revup returns an orderId. You need this ID to initialize the payment integration and process the payment.

For the complete list of order fields and their requirements, see Order fields.

Order lifetime​

An order is valid for one hour if it has not been used to process a payment.

An order can also only be used once. Once an order has been used to create a transaction, it cannot be reused for another payment attempt.

For example, if a customer submits a payment and the payment fails, you must create a new order and use the new orderId for the next payment attempt.

For more information about creating orders, see Orders and transactions.

2. Collect payment details​

Once the order has been created, load the Revup SDK on your payment page.

Revup provides two ways to collect the customer's payment details:

  • Revup Form — a complete payment form that can be embedded into your page.
  • Revup Frames — individual payment fields that can be integrated into a custom checkout layout.

Both options use the orderId created in the previous step.

For complete information about loading and configuring the SDK, see SDK.

Revup Form​

Revup Form provides a complete payment form that you can embed into your checkout.

It is suitable when you want Revup to provide the structure of the payment form while still allowing you to customize its appearance and behavior.

For complete information about initialization, configuration, customization, events, and available options, see Revup Form.

Revup Frames​

Revup Frames provides individual payment fields that you can place within your own checkout layout.

It is suitable when you need more control over the structure and appearance of the payment form.

The available payment fields include:

  • Card number
  • Card holder
  • Expiration date
  • CVC

For complete information about initialization, fields, mounting, events, and styling, see Revup Frames.

info

Revup Form and Revup Frames are reusable checkout integrations. They are not specific to one-off payments and can also be used when implementing token-based payments and subscriptions.

3. Submit the payment​

After the payment form has been loaded, the customer enters their payment details and submits the payment.

The Revup SDK handles the payment submission and communicates with Revup to process the transaction.

Your integration does not need to handle the customer's raw card details directly.

The resulting transaction can have different statuses depending on the payment method and processing flow. For example, a payment may be completed successfully, fail, remain in process, or require additional customer interaction.

info

A successful payment submission does not necessarily mean that the transaction has reached its final state. Some payment methods may require additional processing or customer interaction, such as 3D Secure authentication.

4. Handle the payment result​

After submitting the payment, your integration must handle the resulting transaction.

Revup provides several ways to obtain the payment result, including:

  • The response returned when the payment is submitted.
  • A redirect callback to the URL configured for the payment.
  • Notifications sent to your configured notification URL.
  • The transaction API, which can be used to retrieve the latest transaction information.

The transaction status indicates the current state of the payment. Depending on the payment flow, the transaction can be:

  • success
  • failed
  • in_process
  • waiting_user_interaction

For more information about payment results, transaction statuses, callbacks, and how to determine the final payment state, see Handle the payment result.

What's next?​

Once you have integrated one-off payments, you can use the same Revup payment infrastructure for other payment flows:

  • Token-based payments — use a payment token to process subsequent payments without requiring the customer to enter their payment details again.
  • Subscriptions — create an initial payment and associate it with a subscription plan so that subsequent recurring payments can be processed according to the subscription configuration.