This article is for DEVELOPERS and PARTNERS.
During an integration flow, data is transferred from one application or system to another, i.e. between your store and Snapplify Pay.
The actions and responses that are required for the synchronisation of data between these systems are outlined below.
Learn more about:
Step 1: Payment request
The workflow during a payment request is as follows:
|Your store's action||Build a request with the payment information and do a server-to-server call.|
|Snapplify Pay's action||Pay creates a new payment with relevant information, with the payment state set to NEW and the ‘payment.token’ set to a unique GUID.|
|Response||Pay returns a JSON object containing the payment token, or an error in JSON format and the URL which your customer should be redirected to.|
Step 2: Redirect
The workflow during a redirect is as follows:
|Your store's action||Use the redirect URL returned from the payment request to issue a redirect to your customer.|
|Snapplify Pay's action||Pay initiates your customer’s payment flow.|
|Response||If the token is not valid, your store is required to show an error and notify your customer to start again.|
Step 3: Payment
The workflow during a payment is as follows:
|Snapplify Pay's action|
Pay authenticates your customer and allows a payment to be made.
Pay then redirects your customer back to your store using the URLs from the payment request specified (redirectUrl, declinedUrl, etc.)
The redirect URL will have additional query string parameters: client, token, success, referenceCode.
Step 4: Validation
The workflow during a payment validation is as follows:
|Your store's action|
Once your customer is redirected to your store (in step 3), send a server-to-server call to validate that the payment was successful and do client-specific validation on the payment.
For example: check amounts, currencies, and reference codes.
|Snapplify Pay's action||Pay marks the payment as validated.|
Need help? Use the live chat in the bottom right corner of your screen or email us at email@example.com.