API Explorer
Explore and run ePay API requests with an interactive request builder for the ePay Payments API.
Physical Sale
/public/api/v1/sale
Starts an in-person sale on a physical payment terminal connected to a Softpay point of sale. Physical transactions are processed using operation type `SALE`, which functions as an instant capture making sales function as both an `AUTHORIZATION` and `CAPTURE` in a single atomic operation. These transactions therefor cannot be voided. This endpoint creates the transaction immediately. The `transaction` returned in the response confirms that the sale request was accepted and created, but not that the cardholder has completed the payment yet. If `terminal.id` is provided, ePay targets that specific terminal. If `terminal` is omitted, ePay automatically routes the sale to the fallback terminal for the given point of sale. The `pointOfSaleId` must refer to a physical Softpay point of sale that belongs to your account. ### Refunds Physical transactions does not support card-not-present online refunds. Meaing the refund operation is not supported for physical transactions. To refund a previous purchase a `PAYOUT` transaction must be initiated instead by setting `"type": "PAYOUT"`, which will initiate a transaction on the terminal sending funds to the card placed on the terminal. ### Notification You’ll receive the outcome of the payment on the `notificationUrl` you provide within the request, making it the primary way to track the result of this payment. [Webhooks](/api/webhooks/create-webhook) can be used separately if you need broader, system-wide updates. Early rejections, such as the SoftPay terminal being wrongly configured or blocked by another transaction will return a transaction response with state `FAILED`. If the transaction fails due to early rejections, the final state is returned in the response and no notification is sent to the `notificationUrl`.
Authentication
Paste a key, or log in to ePay test.