Server-to-server
Server-to-server processing is a payment option that allows merchants to perform transactions and interact with the payment system without involving the end-user directly. It is commonly used for various scenarios such as recurring payments, refunds, de-registering payment methods, capturing or voiding previous preauthorizations, and SEPA DirectDebit transactions.
Use cases
- Recurring payments
- Refunds
- De-registering payment methods
- Capture or void of a previous preauthorization
- SEPA DirectDebit transactions (subject to legal jurisdiction)
Processing flow
- The transaction is triggered, for example by a customer using a stored credit card.
- MerchantThe merchant sends the appropriate API call —for example a debit or refund request— to the IXOPAY platform.
- The IXOPAY platform processes the request and sends a transaction request to the PSP.
- The PSP processes the transaction and sends the result back to IXOPAY platform.
- MerchantThe IXOPAY platform processes the PSP's response and, using the
callbackUrl
field, notifies the merchant via a callback to the URL provided in the initial API call. This callback includes the payment status and any relevant details. - MerchantThe merchant handles the callback, it is recommended to store the transaction's
uuid
for future use. - MerchantThe merchant responds to the callback with:Callback response
HTTP/1.1 200 OK
Content-Type: text/plain
OK - The IXOPAY platform responds to the merchant backend with a request containing the status of the transaction, usually
FINISHED
,PENDING
orERROR
. - MerchantThe merchant decides what page to display to the customer depending on the transaction status.
Here's a visual representation of the processing flow using a sequence diagram: