Skip to main content
The Orders API lets you list and filter orders in your Nova.Pay account, retrieve the full details of a single order, create new orders programmatically, and register external payments against existing orders. All endpoints are relative to the base URL https://yourcompany.pay.nova.money/api/v1.

List orders

This endpoint requires an API key passed in the request headers.
Retrieve a paginated list of orders. You can narrow results with date ranges, status filters, a free-text search, and more.

Query parameters

date
Start of the date range filter (inclusive). Use YYYY-MM-DD format.
date
End of the date range filter (inclusive). Use YYYY-MM-DD format.
string
The date field to apply the initial_date/final_date range against (e.g., created_at, paid_at).
integer
Page number for pagination. Defaults to 1.
integer
Number of orders to return per page. Maximum value is 100.
string
Free-text search string. Matches against customer name, email, order ID, and other indexed fields.
array of uuid strings
Filter by one or more cart page UUIDs.
array of integers
Filter by one or more company IDs.
array of strings
Filter by order status. Accepted values:pending waiting_payment partially_paid paid cancelled partially_refunded refunded billed
array of strings
Filter by metadata key-value pairs attached to orders.

Response — OrdersIndex

The response contains pagination metadata in meta and a complete array of OrderData objects in data. See the full JSON response below.

Complete JSON response

This example includes every response property defined for this operation in the OpenAPI schema.

Retrieve an order

This endpoint requires an API key passed in the request headers.
Fetch the complete details of a single order by its numeric ID.

Path parameters

integer
required
The numeric ID of the order to retrieve.

Response — OrderData

integer
Unique numeric identifier for the order.
string
Order UID. Present when the order has an associated charge page.
Charge link URL when the order was invoiced.
date
The date by which the order must be paid.
string | null
Coupon code applied to this order, or null when no coupon was used.
string | null
CRM deal identifier associated with this order, or null.
string | null
Internal observation or note attached to the order, or null.
integer | null
ID of the assigned seller, or null.
string
Current order status. One of: pending, waiting_payment, partially_paid, paid, cancelled, partially_refunded, refunded, billed.
object
Arbitrary key-value metadata attached to the order.
object
UTM tracking parameters captured at order creation (e.g., utm_source, utm_medium, utm_campaign).
number
Total discount amount applied to the order.
number
Final total amount of the order after discounts.
datetime
ISO 8601 timestamp of when the order was created.
date
The order date.
datetime | null
ISO 8601 timestamp of when the order is scheduled, or null.
object | null
The charge page associated with this order.
object | null
The checkout page associated with this order, or null.
object
The customer who placed the order.
object
The seller assigned to this order.
array
Line items included in this order.
array
Payment records associated with this order.
array
Fiscal invoices issued for this order.
object | null
Shipping details for the order, or null.

Example request

Complete JSON response

This example includes every response property defined for this operation in the OpenAPI schema.

Create an order

Create a new order programmatically. You can supply customer info, line items, payment details, and shipping in a single request.

Request body — OrderCreateRequest

date
The order date in YYYY-MM-DD format. Defaults to today if omitted.
string
Coupon code to apply to the order.
integer
ID of the primary product for this order. Used for routing and coupon validation.
datetime
ISO 8601 datetime for scheduling the order (e.g., for appointment-based products).
string
Internal observation or note to attach to the order.
boolean
When true, suppresses automatic content-release actions triggered on order creation.
boolean
When true, applies retention pricing logic during order creation.
object
Arbitrary key-value metadata to store on the order.
object
required
Customer to associate with this order. Creates or updates the customer record.
object
CRM integration settings for this order.
array
Line items for the order.
array
Payment records to attach to the order at creation time.
object
Shipping configuration for the order.

Response

Example request


Register an external payment

This endpoint requires an API key passed in the request headers.
Register an external payment transaction against an existing order. Use this when a payment is processed outside the standard Nova.Pay checkout flow and you need to record it manually.

Path parameters

integer
required
The numeric ID of the order to attach the payment to.

Request body

string
Gateway name (e.g., pagarme, stripe, manual).
string
Transaction or charge ID from the external gateway.
integer
ID of the payment plan associated with this payment.
integer
Number of installments for the payment.
number
Total payment amount in the account currency.
boolean
When true, suppresses automatic content-release actions triggered by the payment status change.

Response

After calling this endpoint, you can verify the payment was recorded correctly by fetching the order with GET /orders/{id} and inspecting the payments array.