Cancels a previously captured transaction that has not yet been included in a bank deposit. Use this endpoint to void a credit card purchase, refund, completion, or force. A successful void ensures the original transaction is never captured on a settlement file.
Version: v1.0 | Last updated: 2026-05-14 | Author: Annick Lachapelle
API Key
Generate your API key from the Payments Manager: Administrator Client β API Key β Add New Key. Pass it as auth-api-key in every request.
Company & Merchant Numbers
Your CompanyNumber (5-digit) and MerchantNumber (8-digit) are issued by PayFacto during onboarding. Both are required on every Void request.
Environment Base URL
Test: https://test.api.payfacto.cloud/v1 | Production: Provided by the PayFacto Integration team upon certification.
Request Format β Base64-Encoded Payload
Requests use HTTP POST with an application/x-www-form-urlencoded body. Assemble all parameters as a cleartext query string, Base64-encode it, then send: auth-api-key={key}&payload={base64}.
Original Transaction Details
You must have stored the transactionNumber and invoiceNumber from the original transaction response. Both are required to identify the transaction to void. The batch containing the original transaction must not yet have been settled.
All parameters are passed inside the Base64-encoded payload form field. Raw body format: auth-api-key=<key>&payload=<base64>. Note that CardNumber, CardType, ExpirationDate, Amount, and CurrencyCode are not required for a Void β the gateway resolves these from the original transaction.
Required fields
The example below uses the test endpoint and a sandbox API key. Replace credentials and base URL before going live.
Always returned
Conditionally returned
The following codes are specific to this endpoint. For the complete catalogue see the Return Code Index.