Testing Nium

▶ Run in Postman

Learn how to test Nium's different services and build your integration with confidence. Please note, for testing purposes this article details how to test Nium's services in the US.

See our Testing - Postman collection for a breakdown of the different testing scenarios available.

📌

IMPORTANT

Please note, this feature is currently in beta and only available for select clients. If you're interested, or have any questions please contact your Nium account manager or Nium Support.

Onboarding

Use the Simulate - Onboarding request to test the onboarding status for individual and corporate accounts.

Individual customers

To comprehensively test onboarding, use the following requests which also help you create the resources you'll manipulate to test onboarding.

Onboarding - Individual Customers
RequestDescription
Step 1: Unified Add Customer
  • Add A customer.
  • Include PEP in firstName to return an ACTION_REQUIRED status.
Step 2: Customer Details V2After creating a customer, use the Customer Details V2 request to verify the complianceStatus of the customer is ACTION_REQUIRED.
Step 3: Simulate Customer Compliance Status
  • Set nextStatus to RFI_REQUESTED and specify requestInfoFor in the IndividualCustomerRequestobject.
  • .
  • Repeat Step 2 to confirm the complianceStatus updates to RFI_REQUESTED.
Step 4: Fetch Individual Customer RFI DetailsFetch details about the Request for Information (RFI).
Step 5: Respond to RFIRespond to the RFI.
Step 6: Simulate Customer Compliance Status
  • Set nextStatus to COMPLETED or REJECT.
  • Repeat Step 2 to verify the COMPLETED final status.
  • Please note, REJECT and COMPLETED are permanent states.

Corporate customers

Testing how to onboard customers follows a similar flow to individual customers, with some variations in API parameters. Simulation API requirements remain the same except for values accepted in requestInfoFor.

Onboarding - Corporate Customers
RequestDescription
Step 1: Onboard Corporate Customer
  • Add A customer.
  • Include BusinessHit in businessName to return an ACTION_REQUIRED status.
Step 2: Customer Details V2After creating a customer, use the Customer Details V2 request to verify the complianceStatus of the customer is ACTION_REQUIRED.
Step 3: Simulate Customer Compliance Status
  • Set nextStatus to RFI_REQUESTED and specify requestInfoFor in the CorporateCustomerRequestobject.
  • Repeat Step 2 to confirm the complianceStatus updates to RFI_REQUESTED.
Step 4: Fetch Corporate Customer RFI DetailsFetch details about the Request for Information (RFI).
Step 5: Respond to RFI for Corporate CustomerRespond to the RFI.
Step 6: Simulate Customer Compliance Status
  • Set nextStatus to COMPLETED or REJECT.
  • Repeat Step 2 to verify the COMPLETED final status.
  • Please note, REJECT and COMPLETED are permanent states.

Payouts

To comprehensively test payouts, first use the following requests to create the resources you'll manipulate to test payouts. Please note:

  • Use the following endpoint - /api/v1/simulations/transactions/{systemReferenceNumber}/transition
  • nextStatus can accept the following values:
    • EXPIRED
    • RFI_REQUESTED
    • COMPLIANCE_COMPLETED
    • REJECTED
    • PAID
    • RETURN
    • ERROR1
  • Use the following request body to test out the different nextStaus statuses:
{
    "nextStatus":"RFI_REQUESTED",
    "requestInfoFor": "creditor_salaryStatement"
}
Payouts - Prerequisites
RequestDescription
Step 1: Onboard Corporate CustomerUse the Onboard Corporate Customer request to create a customer.
Step 2: Customer Details V2After creating a customer, use the Customer Details V2 request to verify the complianceStatus of the customer is COMPLETED.
Step 3: Fund WalletFund the wallet for the customer to make funds available to debit.
Step 4: Assign a Payment IDAssign a a Payment ID to the customer wallet to define the funding source for transactions.

Requests for Information (RFIs)

For each scenario and detailed step, images and detailed instructions are provided for each stage in the testing process.

Payouts - Requests for Information (RFIs)
RequestDescription
Step 1: Add Beneficiary V2In the request body:
  • Include TransactionCreditorHit in beneficiaryName.
  • Set the beneficiary account number to 000987654322.
Step 2: Transfer MoneyTransfer funds between payment sources.
Step 3: Fetch Remittance Life Cycle StatusUse the fetch remittance status and the systemReferenceNumber from the Transfer Money request and review the most recent lastUpdatedAt#status entry - confirm it returns ACTION_REQUIRED.
Step 4: Simulate Transaction StatusSet the next status as RFI_REQUESTED and set requestInfoFor.
Step 5: Fetch Remittance Life Cycle StatusRepeat Step 3 to confirm if the status has updated to RFI_REQUESTED.
Step 6: Respond to Transaction RFIRespond to the RFI.
Step 7:Simulate Transaction Status
  • Set the nextStatus as COMPLIANCE_COMPLETED.
  • Please note REJECTED is a permanent transaction status.
Step 8: Fetch Remittance Life Cycle StatusRepeat Step 3 to confirm if the status has updated to PAID.

Bank errors

Payouts - Bank Error
RequestDescription
Step 1: Add Beneficiary V2Set the beneficiary account number to 00098765991 to return a SENT_TO_BANK transaction status.
Step 2: Transfer MoneyCreate and process a payout.
Step 3: Fetch Remittance Life Cycle StatusUse the fetch remittance status and the systemReferenceNumber from the Transfer Money request and review the most recent lastUpdatedAt#status entry - confirm it returns SENT_TO_BANK.
Step 4: Simulate Transaction Status
  • Set the nextStatus as PAID or ERROR.
  • Repeat Step 3 to verify if a new entry with the expected status
.

System error

Payouts - System error
RequestDescription
Step 1: Add Beneficiary V2Set the beneficiary account number to 000712654321 to return an ERROR transaction status.
Step 2: Transfer MoneyCreate and process a payout.
Step 3: Fetch Remittance Life Cycle StatusUse the fetch remittance status and the systemReferenceNumber from the Transfer Money request and review the most recent lastUpdatedAt#status entry - confirm it returns ERROR.
Step 4: Simulate Transaction Status
  • Set the nextStatus as PAID or ERROR.
  • Repeat Step 3 to verify if a new entry with the expected status
.

Account owner returns

Payouts - Account owner Return
RequestDescription
Step 1: Add Beneficiary V2Set the beneficiary account number to 000987654322 to return a PAID transaction status.
Step 2: Transfer MoneyCreate and process a payout.
Step 3: Fetch Remittance Life Cycle StatusUse the fetch remittance status and the systemReferenceNumber from the Transfer Money request and review the most recent lastUpdatedAt#status entry - confirm it returns PAID.
Step 4: Simulate Transaction Status
  • Set the nextStatus as RETURN.
  • Repeat Step 3 to verify if a new entry with the expected status