How Checkout Works
From the perspective of your application, Nelo's checkout behaves similarly to a credit card processor or real-time payments service provider. It is an online payment method (so you get an instant authorization, which you can later capture), and not like an offline payment method (e.g. cash payments). This is better for conversion, and allows for a closer integration with most e-commerce providers.
At a high level, the flow authorize and optionally capture a charge is five steps. If you are using a platform integration, these steps are all handled for you automatically by that integration:
Platform integrationsIf you use a supported e-commerce platform (Odoo, Vtex, and soon Shopify), Nelo provides an integration which handles checkout, authorization, and capture automatically. The section below is only relevant if you are doing a direct API integration.
Like a credit card payment, a Nelo payment is first authorized, and then captured. You may optionally auth and capture in one step, or capture post-authorization (for example, when you ship the order).
Authorizing a charge
The first step in authorizing a charge is to create checkout
object. A checkout
object represents a single order / cart.
The checkout
request body includes the order total, order breakdown, reference number, and customer information. The response body includes a checkout URL, where your customer will complete the application flow and select a payment plan. Your frontend should redirect the user to this URL.
After a user completes the flow, the payment is authorized and the user is redirected back to your site (specified by confirmationRedirectUrl
) with two query params: paymentUuid
and reference
. The latter is the one you provided when creating the checkout. They are also redirected back to your site if they cancel mid-flow (cancellationRedirectUrl
) with a reference
query param.
Verifying the status of a paymentWhen the user completes the checkout flow, it is important that you verify that the payment was authorized by Nelo. We suggest that your backend make a request to the Nelo API (
GET /v1/payments/$uuid
to get the status of the payment, using the payment ID passed in the redirect.
Capturing a charge
After the transaction is authorized, you may capture or void the authorization via the Nelo API. If you do not capture or void the charge, it will expire in 30 days.
API Documentation
For most e-commerce platforms, the authorization and capture flow is handled automatically by the Nelo platform integration.
However, if you need to support partial-captures or integrate with a custom backend, you will need to integrate with Nelo's REST API. Documentation is available here.
Postman Collection
Updated 21 days ago