Skip to main content
Nova.Pay’s checkout flow is built around three core steps: fetch the available payment plans for your product, tokenize sensitive card data client-side, and submit the payment. This guide walks you through each step end-to-end and explains how to interpret the response so you can deliver a smooth experience to your customers.
1

Get Available Payment Plans

Before presenting a checkout form, retrieve the payment plans associated with your product. Each plan describes an available payment method (credit card, Pix, boleto) along with instalment options and pricing.Endpoint: GET /payment_plans
The response contains an array of plan objects. The id field (e.g. "42-3") is the payment_plan_id you will pass to POST /payments.
2

Tokenize the Card (Credit Card Only)

Nova.Pay never receives raw card numbers. Card data must be tokenized client-side using the gateway’s own SDK before you submit the payment. Nova.Pay supports both Pagar.me and Stripe as card gateways.
Never send raw card numbers to the Nova.Pay API. Always tokenize card data using the gateway SDK running in the customer’s browser.
Use the Pagar.me.js SDK to create a card token. The returned token string (e.g. tok_abc123) is what you pass to POST /payments as credit_card_0_token.
3

Submit the Payment

Call POST /payments with the payment_plan_id from Step 1, the gateway token from Step 2 (credit card only), and the customer’s contact details.Endpoint: POST /payments
Base URL: https://pay.nova.money/api/v1
4

Handle the Response

A successful request returns HTTP 200 with a PaymentResult object. Inspect order_status first, then branch based on the payment method used.
order_status
string
required
Overall status of the order (e.g. "paid", "pending", "refused").
payments
array
Array of gateway-level payment IDs created for this order.
bank_slip_url
string
URL to the generated boleto PDF. Present only when the payment method is boleto.
pix_qr_code
string
Base64-encoded Pix QR code image. Present only for Pix payments.
pix_qr_code_url
string
Hosted URL for the Pix QR code image. Present only for Pix payments.
pix_expires_at
string
ISO 8601 timestamp indicating when the Pix QR code expires. Present only for Pix payments.
redirect_url
string
Success redirect URL if one is configured on the checkout page. Redirect the customer here after displaying confirmation.
offer
string
Signed GlobalID (SGID) of an upsell offer, if the checkout page has one configured and the payment succeeded.
is_subscription
boolean
true when the purchased product is a subscription. Use this to show appropriate messaging to the customer.
If the response contains an offer field, you can present the customer with a one-click upsell — no card re-entry needed. See the Upsell guide for details.

Two-Card Split Payment

Nova.Pay supports splitting a payment across two credit cards. Include both tokens and their respective payment plan assignments in the request body.
Each card is charged independently by the gateway. The payments array in the response will contain two entries — one per card.