Integration testing guide
Test Payabli’s APIs and features in the sandbox environment before going live with your Payabli integration. You need a Payabli sandbox account to do any testing.
Pay In
This section explains how to test Payabli’s Pay In features in the sandbox environment.
Process transactions
You can create transactions with the API or Payabli’s embedded components. To create a transaction via the API, see Make a sale transaction. To create a transaction via Payabli’s embedded components, see Embedded components overview.
You can simulate declined transactions in the sandbox environment by using Payabli’s provided test cards. See test accounts for more information.
Cancel transactions
You can cancel a transaction in the sandbox environment by voiding, refunding, or reversing it:
- Void: If the transaction isn’t settled, you can void it to prevent the transaction from settling.
- Refund: If the transaction is settled, you can refund it and send the money back to the account holder.
- Reversal: Automatically void or refund the transaction based on settlement status.
See Cancel a pay in transaction for more information on cancelling transactions. By default, transactions are settled at 9:00 PM UTC daily. If you want to change the time that transactions are settled, contact your Payabli solutions engineer.
Handle disputes
Chargebacks and ACH returns are dispute events that occur when a customer disputes a transaction in a production environment. To test chargebacks and ACH returns in the sandbox environment, follow these steps:
Create a webhook notification
Create a webhook notification for the ReceivedChargeback or ReceivedAchReturn event.
See Manage notifications for more information.
Create webhook handling logic
Your app should handle the webhook notification when it’s received via an HTTP request. This includes parsing the notification data and triggering behavior based on the event type.
Trigger the webhook event
Contact your Payabli solutions engineer to trigger a chargeback or ACH return in the sandbox environment. This sends a webhook notification to your app that you can handle. In a production environment, these events are automatically triggered when a customer disputes a transaction.
Test payment funding statuses
All pay in transactions have a payment funding status. The payment funding status indicates where a transaction is in the settlement process. Transactions in the sandbox environment automatically progress through the following funding statuses:
- Pending - This transaction is in an open batch.
- In Transit - This transaction is in a closed batch that’s being routed to the banks.
- Transferred - The funds are being transferred to the merchant’s bank account.
- Funded (settled) - The funds are in the merchant’s bank account.
If you need to test how your app handles the following funding statuses, contact your Payabli solutions engineer:
- Exception
- ACH Return or Chargebacks
- Held
- Released
See Payment funding status for more information.
Pay Out
This section explains how to test Payabli’s Pay Out features in the sandbox environment.
Handle payouts
Payouts are expenses that you pay to your vendors. In Payabli, there are two steps for handling payouts:
- Authorizing - Reserves funds for a payout.
- Capturing - Flags authorized funds for batch processing.
After a payout is authorized, the funds are reserved and can’t be used for other payouts. After a payout is captured, the funds are transferred to the vendor’s bank account during the next batch processing window. To learn more about handling payouts, see Manage payouts with the API.
Manage vendors
Vendors are entities that receive funds from your payouts. You can reference vendors in payouts and bills to organize and track expenses. Before you can reference a vendor in a payout or bill, you must create the vendor. See Manage vendors with the API for more information on creating and managing vendors.
Manage bills
In Payabli, bills represent a bill from a vendor that a paypoint is expected to pay. To create a bill via the API, see Create bill. After you’ve created a bill, you can approve it for payment, update it, or delete it. See Manage bills with the API for more information.
Pay Ops
This section explains how to test Payabli’s Pay Ops features in the sandbox environment.
Board merchants
Boarding is the process of enabling paypoints to process payments via Payabli. There are four stages in the boarding process:
Send boarding link
The paypoint must send a boarding link to the prospective merchant. To learn more about creating and sending boarding links, see Send prefilled boarding applications.
Merchant applies
The merchant fills out and submits the boarding application. The merchant also e-signs the agreement during this step.
Underwriting
As merchants submit boarding applications in the sandbox environment, they automatically move from the “Submitted” status to the “Underwriting” status. If you need to test other boarding application statuses, or create new paypoints from boarding applications, contact your Payabli solutions engineer. In a production environment, Payabli reviews the merchant’s application and decides how to proceed with it.
See Board merchants for more information.