Initiates a single-step Interac debit purchase (IAP β Interac Automated Payment). Funds are immediately debited from the cardholder's Interac account and settled in one operation. No pre-authorization or completion follow-up is required.
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 IAP Purchase 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}. For terminal transactions (InputType=N), send CardNumber as 40 space characters and ExpirationDate as 4 space characters.
IAP β Interac Automated Payment
IAP (Interac Automated Payment) endpoints handle Interac debit transactions processed through integrated systems. This endpoint initiates a direct, single-step Interac debit purchase. Funds are immediately debited from the cardholder's account and settled β no pre-authorization or completion follow-up is required. For credit card purchases, use /v1/purchase instead. For Interac purchases that require a reserve-and-capture flow, use /v1/iapPreAuthorization followed by /v1/iapCompletion.
All parameters are passed inside the Base64-encoded payload form field. Raw body format: auth-api-key=<key>&payload=<base64>. For terminal transactions (InputType=N), send CardNumber as 40 space characters and ExpirationDate as 4 space characters. E-Commerce transactions send 5 blank spaces for MerchantTerminalNumber.
Required fields
Optional fields
The example below uses the test endpoint and a sandbox API key, and shows a terminal (InputType=N) IAP Purchase. Replace credentials and base URL before going live.
Always returned
Conditionally returned
The following codes are most relevant to this endpoint. For the complete catalogue see the Return Code Index.