Commerce Suite - Integrator Quickstart Guide
Select a workflow part below to see the required steps, review process diagrams, and jump directly to the relevant operations.
Part 1: Integration Preparation - Gather and confirm integration prerequisites.
Getting Started
Before you begin planning or prototyping your Commerce Suite integration, you'll want to first work with our implementation team to ensure each of the below items has been completed:
1. Gateway Sandbox Account Setup:
- If you are using a Nuvei gateway, our team will setup your sandbox and provide you with test credentials. For third party gateways, please reach out to your gateway directly.
- Note: If you are integrating both AR and AP modules, each will require its own set of credentials to authenticate calls to the Commerce Suite API.
2. Securely Store Your Sandbox Credentials:
- Once you've obtained your gateway credentials, securely store them for use when obtaining Commerce Suite API tokens throughout your workflow.
3. Define Your Platform:
- If your accounting software is not already registered, our team will assist you in adding your platform record so it is available in the API
- If you are using a Nuvei gateway, our team will setup your sandbox and provide you with test credentials. For third party gateways, please reach out to your gateway directly.
- Note: If you are integrating both AR and AP modules, each will require its own set of credentials to authenticate calls to the Commerce Suite API.
- Once you've obtained your gateway credentials, securely store them for use when obtaining Commerce Suite API tokens throughout your workflow.
- If your accounting software is not already registered, our team will assist you in adding your platform record so it is available in the API
1. Gateway Sandbox Account Setup:
2. Securely Store Your Sandbox Credentials:
3. Define Your Platform:
Part 2: Accounts Receivable (AR) - Sync receivables documents and get paid.
What It's For
Integrate to the Commerce Suite AR Module to sync receivables documents such as invoices, orders, or quotes to seamlessly collect payments against them through Commerce Suite's robust hosted payments engine.
How It Works
- Define all receivables document types that are to be enabled in Commerce Suite.
- Sync merchant receivables documents (Invoice, Sales Order, etc.) for which payment will be collected through Commerce Suite.
- Update previously synced documents to manage things like date, tax, or balance adjustments on-the-fly.
- Query any document to retrieve a live payment URL or simply direct end-users to the Commerce Suite portal to make a payment against any synced document.
Key AR Endpoints
- POST
/api/Authorizewith your AR-Specific username and password to receive a token. This token should then be securely stored and included in the Authorizationheader for all AR related requests.
Obtain an API Token:
- POST
/api/MerchantPlatformDocTypeentity to specify the types of documents (e.g., Invoice, Sales Order, Quote) you want to present to paying customers. At least one type is required. - POST
/api/MerchantCustomerCardto create a MerchantCustomer. - PUT
/api/MerchantCustomerCardto update the customer. - DELETE
/api/MerchantCustomerCard/:merchantCustomerCardIda customer by ID. - POST
/api/Documentto create a new document record for the indicated document type. - GET
/api/Document/{documentID/customerId}to retrieve documents by customer or doc Id. - PUT
/api/Document/{documentId}to edit an existing document to updates things like dates, tax amount, freight, current balance, and attached PDF documents. - DELETE
/api/Document/{documentId}to delete an existing document by documentId.
Define Merchant Document Types:
Create and Manage Payors (Customers):
Create and Manage Enabled Doc Types:
Part 3: Accounts Payable (AP) - Manage vendors and automate disbursement.
What It's For
Integrate to the Commerce Suite AR module to manage vendor bills and configure payouts for automated disbursements and tracking.
How It Works
- Use the endpoints below to create, update, or retrieve bills tied to vendors.
- Configure payout options (ACH, Check, RTP) for each merchant gateway before initiating disbursements.
Key AP Endpoints
- POST
/api/Authorizewith the gateway credentials that you'll be using for AP to receive an access token. Then, securely store this token for use in theAuthorizationheader for all AP operations. - POST
/api/Billto create a new vendor bill that you would like to track in Commerce Suite. - PUT
/api/Billto make adjustments or updates to an existing bill. - DELETE
/api/Bill?id={billId}to delete a bill by billId. - GET
/api/Bill/Allto get a list of all bills available for this merchant. - GET
/api/Bill/{billId}to retrieve a specific bill by billId. - GET
/api/MerchantGatewayPayoutto configure merchant payout settings.
Obtain a Commerce Suite API Token
Create and Track Vendor Bills:
Make Updates to Vendor Bills:
Delete Previously Synced Vendor Bills:
List All Synced Vendor Bills:
Fetch a Bill by Bill Id
Configure Commerce Suite Vendor Payout
Part 4: Commerce Suite API Responses
Understanding API responses and error handling. Commerce Suite APIs use standard HTTP status codes and always return responses in application/json format. Your integration should check the HTTP status code first, then parse the response body for additional error or success details.
Common API Response Codes
- 201 Created: The request was successful and a new resource was created.
Action: Parse the response body for the created resource details. - 400 Bad Request: The request is not valid (e.g., malformed JSON or missing required fields).
Action: Check your request for syntax errors or missing/invalid fields. The response body will include details. - 401 Unauthorized: The credentials or access token are invalid or missing.
Action: Ensure you are sending a valid access token. Use the/api/Authorizeendpoint to obtain one if needed. - 403 Forbidden: The request does not have permission to access the endpoint.
Action: Verify your user permissions and endpoint access rights. - 404 Not Found: The server cannot find the requested resource.
Action: Check the endpoint URL and resource identifiers. - 429 Throttle: The server has received more requests than are permitted in one minute.
Action: Check the error response to determine how long to wait or check merchant settings to adjust the limnit. - 500 Server Error: The server encountered an unexpected error or may be offline.
Action: Retry the request again at a later time or contact support if the issue persists.
Best Practices for Error Handling
- Always check the HTTP status code before parsing the response body.
- For 4xx errors, review the error message in the response body for details on what went wrong.
- For 401 and 403 errors, verify your authentication and authorization.
- For 500 errors, consider implementing retry logic and logging the error for further investigation.
graph TD
A[API Request Sent] --> B{Check HTTP Status Code};
B -- 201 Created --> C[Success: Resource Created];
B -- 400 Bad Request --> D[Error: Fix Request Syntax/Fields];
B -- 401 Unauthorized --> E[Error: Get New API Token];
B -- 403 Forbidden --> F[Error: Check Permissions];
B -- 404 Not Found --> G[Error: Check URL/Identifiers];
B -- 500 Server Error --> H[Error: Retry & Log Issue];
Part 5: Integration Certification - What to Expect
Certifying your Commerce Suite integration ensures your ISV solution can securely and reliably support all intended functions in alignment with Nuvei guidelines and best practices. Before production enablement, each Commerce Suite module (e.g. Accounts Receivable or Account Payable) used in your integration must be tested and certified. Below you will find descriptions for the most critical functions to be certified for each Commerce Suite module used.
Account Payable (AP) Functional Certifications
- Authorize: Before making AP calls, you'll need to exchange your AP gateway credentials for a Commerce Suite API token to be used in subsequent AP requests.
- Vendors: Vendors represent your payees. Use vendor endpoints to create, update, and delete vendors in Commerce Suite enabling features such as automated payout routing and vendor self-management.
- Bills: Bills correspond to vendor invoices synchronized from your ERP or created via API. Create, retrieve, update, and delete bills to manage the AP queue prior to payout.
- Payouts: Once bills are approved, create payouts and adjust or cancel them when necessary. For checks, schedule with sufficient lead time to account for printing and mail delivery.
- Additional Certifications: Additional certifications may include configuring payout settings (such as methods and schedules) and retrieving data via OData for reporting or automation.
Account Receivable (AR) Functional Certifications
- Authorize: Before making AR calls, you'll need to exchange your AR gateway credentials for a Commerce Suite API token to be used in all subsequent API requests.
- Customers: Customers represent the payor. Use customer endpoints to create customer profiles and enable Commerce Suite payments for synced receivable documents.
- Documents: Documents represent transactional receivable items such as invoices, orders, or quotes. Syncing these documents with Commerce Suite allows you to seamlessly collect payments against them through Commerce Suite's robust, hosted payments engine..
- Additional Certifications: Additional certifications may include updating your software platform profile, adjustments to available card types, and other supporting follow up tasks depending on exactly how your integration works.
Part 6: Sandbox Transaction Testing and Test Cards by Gateway
Sandbox Testing by Gateway
While the Payment Middleware translates transactional production requests across gateways, transaction testing in sandbox environments requires alignment with each gateway's testing practices and test values. This section centralizes the essential test data and scenarios that integrators need across gateways.
PayaConnect Gateway
PayaConnect Gateway Documentation
Use the trigger amounts below based on the outcome you'd like to test; use AVS and CVV trigger values to force ACS response as needed.
Test Card Numbers
| Brand | PAN | CVV | Exp |
|---|---|---|---|
| Visa | 4111111111111111 | 999 | Any future date |
| Mastercard | 5454545454545454 | 999 | Any future date |
| Amex | 6011000990139424 | 1234 | Any future date |
| Discover | 6011000991300009 | 999 | Any future date |
Outcome Testing Trigger Amounts
| Sale Amount | Outcome/Response |
|---|---|
| $29.66 | APPROVED |
| $5.00 | 1500 DENY |
| $6.16 | 1616 INSUFFICIENT_FUNDS |
| $6.22 | 1622 CARD_EXPIRED |
| $6.30 | 1630 REJECTED_BATCH (first close fails; second succeeds) |
| $8.xx | Delayed response; cents = seconds (e.g., $8.05 ˜ ~5s) |
AVS/CVV Test Trigger Values
| Value | Type | Outcome |
|---|---|---|
| Street: 5800 NW 39th AVE; ZIP: 32606 | AVS street | AVS - PASS |
| Street: 2831 NW 41st St STE J; ZIP: 32615 | AVS street | AVS - DENY |
| 999 (V/MC/Disc) | CVV Data | CVV match |
| 123 (V/MC/Disc) | CVV Data | N - not auto declined |
Test ACH Accounts
| Account Type | Bank Routing | Account Num | Response |
|---|---|---|---|
| checking | 072000326 | 700953657 | Success |
Note: ACH approvals do not behave like card authorizations. Settlement with the banks typically completes in 1–4 business days. The account above can be used to test a successful payment at the point of entry.
NCP (v1) Gateway
Use the test card data below for each brand (Visa, Mastercard, Amex, Discover). Expiry: any future date; CVV: any valid value (e.g., 123; Amex 1234).
Test Card Numbers
| Brand | PAN | CVV | Exp |
|---|---|---|---|
| Visa | 4111111111111111 | 123 | Any future date |
| Mastercard | 5454545454545454 | 123 | Any future date |
| Discover | 378282246310005 | 123 | Any future date |
| Amex | 6011000990139424 | 1234 | Any future date |
3DS / Flow Trigger Values
| Condition | PAN | How to trigger in INT |
|---|---|---|
| 3DS “Force Challenge” | 4000000000001109 | amount > 150 |
| 3DS “Challenge Flow” (frictionless) | 4000000000001091 | cardHolderName = CL-BRW1 |
Note: Nuvei's INT environment maintains the authoritative test-card database.
Till Payments Gateway
Note: Use the Simulator connector for card outcomes and SEPA Direct Debit testing.
Test Card Numbers
| Brand | PAN | CVV | Exp |
|---|---|---|---|
| Visa (success) | 4111111111111111 | 123 | Any future date |
| Visa (decline) | 4242424242424242 | ||
| Mastercard | 5555555555554444 | 123 | Any future date |
| Discover | 6011111111111117 | 123 | Any future date |
3DS / Special Triggers
| Trigger | How |
|---|---|
| SCA soft-decline | Send amount 65.00 (any currency) |
| 3DS scenarios | Use listed 3DS test numbers (frictionless/challenge) when enabled |
SEPA Outcome IBAN Triggers
| IBAN last 4 | Outcome |
|---|---|
| 1111 | Success |
| 2222 | Pending |
| 2003 | Declined |
| 2006 | Insufficient funds |
PayaCore Gateway
Use the test card data below for each brand (Visa, Mastercard, Amex, Discover). Expiry: any future date; CVV: any valid value (e.g., 123; Amex 1234).
Test Card Numbers
| Brand | PAN | CVV | Exp |
|---|---|---|---|
| Visa | 4111111111111111 | 123 | Any future date |
| Mastercard | 5454545454545454 | 123 | Any future date |
| Discover | 6011000991300009 | 123 | Any future date |
| Amex | 371449635398431 | 1234 | Any future date |
Check Commerce
Test Account Numbers & Scenarios
| Scenario | Amount | Account No | Routing No | Expected Result |
|---|---|---|---|---|
| Declined Deposit / Pre-approval (NSF) | 1.27 | 3666394279 | 123456780 | Declined (NSF) |
| Declined Deposit / Pre-approval | 1.30 | 3666394279 | 123456780 | Declined |
| Successful Deposit / Pre-approval | 1.25 | 111111111 | 123456780 | Success |
Check Commerce Trigger Amount Codes
| Code | Status | Trigger Amount |
|---|---|---|
| 0 | Processed | 1.23 |
| 1 | Originated | 1.24 |
| 2 | Funded | 1.25 |
| 3 | Returned | 1.26 |
| 4 | Insufficient Funds (NSF) | 1.27 |
| 5 | Chargeback | 1.28 |
| 6 | Invalid | 1.29 |
| 7 | Declined | 1.30 |
| 8 | Refund | 1.31 |
| 9 | Credit | 1.32 |
| 10 | Incomplete | 1.33 |
| 11 | Cancelled | 1.34 |
| 12 | BO Exception | 1.35 |
| 13 | Downloaded | 1.36 |
| 14 | Credit Originated | 1.37 |
| 15 | Credit Downloaded | 1.38 |
| 16 | Credit Return | 1.39 |
| 17 | Credit Funded | 1.40 |
Note: Use the above account numbers and trigger amounts to simulate specific outcomes in the Check Commerce sandbox. For additional details or support, contact your Nuvei Partner representative.
Authorize.Net Gateway
Use the test card data below for each brand (Visa, Mastercard, Amex, Discover). Expiry: any future date; CVV: any valid value (e.g., 123; Amex 1234). Keep the sandbox account in Live Mode for realistic behavior.
Test Card Numbers
| Brand | PAN | CVV | Exp |
|---|---|---|---|
| Visa | 4111111111111111 | 123 | Any future date |
| Mastercard | 5424000000000015 | 123 | Any future date |
| Discover | 6011000000000012 | 123 | Any future date |
| Amex | 370000000000002 | 1234 | Any future date |
Test Card Trigger Values
| Type | Value | Effect |
|---|---|---|
| Card - approved | any amount | Approved |
| Card - decline | zipCode = 46282 | General decline (Response Code 2) |
| ACH - approved | amount < $100 | ACH (eCheck.Net) approved |
| ACH - declined | amount > $100 | ACH (eCheck.Net) declined |
Part 7: Gateway Level Validation
Why It Matters
Validating that all payment related activity within Commerce Suite is received, recorded, and (when applicable) settled by your payment gateway protects against mapping errors, field mismatches, or lost webhooks and ensures that what your application sends is exactly what your gateway processes.
Validate using Your Gateway's Reporting / Virtual Terminal (VT)
- Open your gateway's reporting or VT tool and filter by the transaction timestamp window used in testing.
- Search by a reliable key (amount, last 4, reference/transaction ID, order/invoice number, or customer ID).
- Open the gateway detail view and compare each item in “What to Validate” against your middleware request/response records.
- For two-step flows, confirm the relationship: Auth ? Capture (or Sale only) and any subsequent Void/Refund entries are properly linked.
- Confirm settlement (batch close, deposit/funding line) when applicable.
If any value doesn't match: re-check your request body (types, formatting, currency), confirm the correct headers/token were used, and re-run a controlled test with a unique external reference to isolate the entry in reports.
What to validate when checking gateway payment activity
| Field / Aspect | What to Check |
|---|---|
| Transaction Type | Auth, Capture, Sale, Void, Refund (and APM equivalents) match your intended call (/payment vs. /transaction) and gateway record. |
| Amounts | Base amount, currency, and any surcharge, tax, or tip amounts equal the values displayed in the gateway. For Auth?Capture, ensure captured amount equals or is = authorized amount per your flow. |
| Status & Codes | Approved/Declined/Voided/Refunded states, plus gateway authCode, transactionId/reference, and (if present) AVS/CVV and 3DS results. |
| Custom Data | Your external identifiers (e.g., orderId, invoiceNumber, customerID, metadata) are persisted and searchable in the gateway UI/reports. |
| Payment Method | Masked PAN (last 4), brand, wallet/APM labels, token indicators, and card-present vs. card-not-present flags appear as expected. |
| Batch / Settlement | For captured sales, verify the transaction moved to an open/closed batch as expected and appears on funding/deposit reports. |
| Descriptor / MID | Correct MID, location, and (if applicable) soft descriptor values are associated to the transaction. |
| Timestamps | Time zone and ordering (Auth before Capture, Refund after Sale, etc.) are consistent between middleware responses and the gateway. |
Validation Flow
graph TD
A[1. API Call to Commerce Suite] --> B(2. CS Processes & Forwards to Gateway);
B --> C[3. Gateway VT/Reporting];
A --> D[4. Your API Response Record];
subgraph 5. Validation Step
C -.-> E{Compare Records};
D -.-> E;
end
E -- Match --> F[Pass ?];
E -- Mismatch --> G[Fail ?: Investigate];