Scroll to top

Before going through this section, please check the Billing agreement section here.

This functionality allows you to initiate a deposit of funds from a user who has already set up a Billing agreement, without the need for the user to log in, thus no redirect is necessary.

OneClick payment can be set up when creating a payment using either the one-step (regular/simple) or two-step method.

After creating the initial agreement with the ‘createBillingagreement=true’ parameter, Luxon will send you the ‘bilingAgreementID’ via a webhook. You should store this ID for subsequent user deposits.

Note that a OneClick payment requires that the user has enough Luxon balance in the desired currency. Having insufficient balance will incur an error response:

"status":{
"code":"insufficient.balance",
"message": "Insufficient balance. Please decrease the amount.",
"detail": null
}

If the balance is insufficient, you’ll receive an error response and you should redirect the user back to the cashier with a prompt to top up their Luxon wallet.

Request Parameters

Name Type Description
merchantTransactionId String A Unique ID to identify the transaction.
merchantUserId String A unique ID to identify the user.
redirectUrl String The URL we redirect the customer to after the payment is completed.
comment String A text comment that accompanies the deposit (visible to the user and merchant).
amount Integer A positive integer in cents represents how much the user wishes to deposit.

e.g. 100 EUR would be 10000 / 50 USD would be 5000

currency String The ISO 3 letter currency code in lowercase, see the supported currency list for details.
billingAgreementId String A unique Luxon billing agreement identifier that can be used to create transactions on behalf of the user.

This ID is generated on a previous deposit and must be stored by the merchant.

brand String An optional string that can be used to send identifying information for the merchant to allow grouping of transactions.
useBrand Boolean An optional boolean that will replace the merchant name registered with Luxon with text sent in the brand field in the user payment confirmation screen.

 

Request Format

{
"merchantTransactionId": "string",
"merchantUserId": "string",
"redirectUrl": "string",
"comment": "string",
"amount": number,
"currency": "String",
"billingAgreementId": "string",
"brand" : "string",
"useBrand": Boolean
}

Request example

{
"amount": 50000,
"redirectUrl": "https",
"useBrand": false,
"merchantTransactionId": 648513721,
"billingAgreementId": "62SQ***vZM",
"comment": null,
"currency": "USD",
"merchantUserId": 876226,
"recipientWallet": null,
"createBillingAgreement": false,
"brand": null
}

Response Parameters, Format & Example

Same as the Simple Payment