POST
/
payment-intents

Headers

ApiKey
string
required

Your api key. To create a key, please get into our dashboard. If you don't have access to it, please reach the Support team.

MerchantId
string
required

Your merchant ID. This information is available in our dashboard. If you don't have access to it, please reach the Support team.

Environment
enum<string>
required

Allow you to choose between the sandbox mode to perform some tests or the live mode for real world transactions.

Available options:
live,
sandbox

Body

application/json
customerReference
string
required

This is a custom field you can fill with any reference you have on your side matching this payment intent. It can allow you to make a correspondence with this payment intent in your system. This field is specifically useful for customer's references, like your customer ID.

purchaseReference
string
required

This is a custom field you can fill with any reference you have on your side matching this payment intent. It can allow you to make a correspondence with this payment intent in your system. This field is specifically useful for purchase's references, like an order your customer made.

amount
number
required

Amount intended to be collected by this payment intent. A positive integer representing how much to charge in the smallest currency unit (e.g., 100 cents to charge €1.00 or 100 to charge FCFA100, a zero-decimal currency).

currency
string
required

Three-letter ISO currency code.

overrideBusinessName
string

This field is mandatory for aggregators and allows you to override the business name displayed to the end users. This is useful if you don't want your clients to see "Hub2" as the target of their payment but your company name instead.

Response

201 - application/json
id
string
required

Unique identifier for the PaymentIntent

merchantId
string
required

Identifier of the merchant owning this PaymentIntent

createdAt
string
required

Datetime in UTC timezone at which this object was created. Follows the Datetime ISO.

updatedAt
string
required

Datetime in UTC timezone at which this object was updated for the last time . Follows the Datetime ISO.

token
string
required

A unique JSON Web Token allowing to attempt a Payment on the PaymentIntent on a client-side application.

purchaseReference
string
required

A reference provided by the client during the creation of this PaymentIntent

customerReference
string
required

A reference provided by the client during the creation of this PaymentIntent. It is a reference to the customer for who this PaymentIntent was created.

status
enum<string>
required

The current status of this PaymentIntent

Available options:
action_required,
canceled,
payment_required,
processing,
successful
amount
number
required

Amount intended to be collected by this PaymentIntent. A positive integer representing how much to charge in the smallest currency unit (e.g., 100 cents to charge €1.00 or 100 to charge FCFA100, a zero-decimal currency).

currency
string
required

Three-letter ISO currency code.

payments
object[]
required

List of Payment attempts made on this PaymentIntent

mode
enum<string>
required

Mode in which this PaymentIntent exists. The sandbox mode can be used during the integration phase and is available as soon as the merchant account is created. No real transactions are made in this mode. The live mode has to be used to make real transactions.

Available options:
live,
sandbox
nextAction
object

Action required to execute to continue the processing of the current Payment on this PaymentIntent. The action allows the customer to validate the Payment. - A redirection action provides all the information to redirect the customer to an external page, - A ussd action provides a message to display to the user for the validation of the Payment. He will receive a USSD message on his phone describing how to make the validation, - A otp action requires that you display an input to the customer to collect an OTP. A message is provided to explains to the user how to get this OTP. Then, the client will have to send the authentication request.

lastPaymentFailure
object

In case of a Payment attempt failure, this object will describe the reason of the failure

overrideBusinessName
string

For Aggregator, name of the merchant