Skip to main content
The Upsell API lets you present a one-click post-purchase offer to customers immediately after a successful checkout. Because Nova.Pay reuses the payment method from the original order, the customer confirms the upsell with a single action — no re-entering card details required. The signed offer token (offer) is returned in the POST /payments response whenever the checkout page has an upsell configured and the payment succeeds.
Only display the upsell UI if the offer field is present in your POST /payments response. When offer is absent, no upsell is available for that order.

POST /upsell

This endpoint is not host-restricted — it can be called from any origin, making it safe to invoke directly from client-side code.
Confirm an upsell offer using the saved payment method from the original order. Pass the offer SGID returned by POST /payments to charge the customer for the upsell product without requiring them to re-enter payment information. Base URL: https://pay.nova.money/api/v1

Request Body

offer
string
required
The signed GlobalID (SGID) returned in the offer field of a successful POST /payments response. This token encodes the upsell offer details and authorizes the one-click charge.
meta
object
Optional key/value metadata to attach to the upsell order. Use this for attribution tracking, funnel identifiers, or any custom data your application needs.

Request Example


Response — UpsellResult

order_status
string
Status of the upsell order after processing. Uses the same set of values as the Payments API: pending, waiting_payment, partially_paid, paid, cancelled, partially_refunded, refunded, billed.
payments
array of strings
Gateway-side payment IDs (e.g., Pagar.me charge IDs or Stripe PaymentIntent IDs) for the upsell charge(s).
bank_slip_url
string (uri)
URL to a bank slip (boleto) for the upsell order. Present only if the original order used bank slip as the payment method.
pix_qr_code
string
Base64-encoded Pix QR code image for the upsell charge. Present only if the original order used Pix.
pix_qr_code_url
string (uri)
URL to a hosted Pix QR code page for the upsell charge. Present only if the original order used Pix.
pix_expires_at
string (datetime)
ISO 8601 datetime after which the Pix QR code expires. Present only if the original order used Pix.

The offer SGID is single-use. Once you call POST /upsell with a given token — regardless of the outcome — that token is invalidated and cannot be reused.