QuadPay

The QuadPay Developer Hub

Welcome to the QuadPay developer hub. You'll find comprehensive guides and documentation to help you start working with QuadPay as quickly as possible, as well as support if you get stuck. Let's jump right in!

Get Started    

API Documentation

This document will outline the API and the high-level requirements of completing a custom QuadPay integration.

API Documentation is available here

QuadPay Payment Flow

This is a basic description of how a Payment Flow looks with a QuadPay Integration.

  1. User selects QuadPay as their payment method during checkout.
  2. Merchant Server POSTs to QuadPay 'Create Order' API endpoint containing basic information the Order.
  3. QuadPay validates the Order information and returns a token and a Redirect URL.
  4. Merchant Server redirects Customer to the Redirect URL provided by QuadPay.
  5. Customer completes payment process on QuadPay site.
  6. QuadPay redirects Customer back to Merchant Site via a confirm or cancel URL (depending on whether they completed payment successfully or not). These URLs are set by Merchant Server when Creating the Order.
  7. Merchant Server verifies Order Status via the QuadPay API ('GET Order') and updates internal Order status based on QuadPay completion status.

Important For any successful QuadPay order, the integration should immediately verify the status of the order in QuadPay via the GET Order Endpoint and persist the OrderId returned for future use in creating refunds.

QuadPay 'Pending' Orders

Integrations should keep track of what orders have been sent to QuadPay for payment and have a scheduled job that runs every 10 minutes or so that checks the status of these orders via the 'GET Order' Endpoint. This insures that if a customer doesn't get successfully redirected back to the integration's callback endpoint, the merchant's internal order status can be updated to reflect the outcome of the QuadPay checkout.

'Production' vs 'Sandbox'

Custom integrations should be built to understand the context in which they are operating. During development and testing, all configuration parameters will be specific to the Sandbox environment. This includes the Client ID, Client Secret and Audience used in the Authorization Endpoint and the base QuadPay API Endpoint for all Merchant API Requests.

Once a custom integration is fully developed and tested, QuadPay will issue a new set of Production credentials to be used when the integration goes live.

Production Merchant API Endpoint
POST https://api.quadpay.com/

Sandbox Merchant API Endpoint
POST https://api-ut.quadpay.com/

Authentication

QuadPay uses OAuth2 Client Credentials Flow as the primary means for authorizing Merchant API requests. This is a two step process in that the client must obtain an access token via the OAuth token endpoint and then use this token to access the QuadPay API endpoints.

Client Id & Client Secret will be provided by QuadPay.

Note These access tokens are created with a specific expiration time. The integration should cache these tokens for no longer than the expiration length and request a new one if the existing token has expired.

Refer to the Authentication API documentation for more information.

API Endpoint - Merchant Configuration

This endpoint retrieves payment configuration settings that define the valid Order min/max ranges for use with QuadPay.

Configuration Endpoint Documentation

API Endpoint - Create Order

Creates an Order that is used to initiate the QuadPay payment flow.

Production Endpoint
POST https://api.quadpay.com/order

Staging Endpoint
POST https://api-ut.quadpay.com/order

Create Order Endpoint Documentation

API Endpoint - Get Order

Retrieves an order by the token assigned to it.

Production Endpoint
GET Https://api.quadpay.com/order/{orderId}

Sandbox Endpoint
GET https://api-ut.quadpay.com/order/{orderId}

Get Order Endpoint Documentation

API Endpoint - Refund

This endpoint issues a refund against an existing 'Approved' QuadPay Order ID.

Requests to this endpoint are idempotent if a unique requestId is provided.

Production Endpoint
POST https://api.quadpay.com/order/[order id]/refund

Sandbox Endpoint
POST https://api-ut.quadpay.com/order/{orderId}/refund

Create Refund Endpoint Documentation

Test Data

Field
Test Data

Phone

Your mobile phone number

Email

Can be real or fake valid email address (‘@example.com’ for fake)

Verification Code

Code received via SMS

Name

Anything

Address

Anything valid

Birthdate

Anything 18+ years old

Billing Address

Anything valid

Card Holder Name

Anything

Card Number

4242 4242 4242 4242

Expiration date

02 / 22

CVC

222