For the complete documentation index, see llms.txt. This page is also available as Markdown.

Dual Payment using XPay Token

Overview of the dual payment process where Cover Genius is the Merchant of Record

Partners that are at a minimum of PCI DSS SAQ A compliant are able to utilize the XPay API to process the insurance transaction. This will make Cover Genius the Merchant of Record (MoR) for the insurance portion of the transaction.

Overview

In a dual payment integration:

  1. Partner collects payment for the main product/service

  2. XCover (via XPay) collects payment for the insurance separately

  3. Customer experiences two transactions in quick succession

  4. Partner remains MoR for product, XCover is MoR for insurance

Workflow

Step 1: Create Offers

Request insurance product offerings using the Create Offers endpoint. Display the insurance products and pricing to the customer during the shopping experience.

Step 2: Collect Payment Details

After a customer selects the insurance product and proceeds to the checkout stage, the payment information (credit card details) must be collected and transmitted through the XPay Customer Tokens endpoint.

Sending Payment Details:

The XPay API uses a long-lived JSON Web Token (JWT) which will be provided to you by the assigned Client Solutions Engineer (CSE).

Step 3: Process Main Product Payment

Process the payment for the main product/service through your own payment provider.

Step 4: Confirm Offer with XPay Details

Call the Confirm Offer endpoint with the XPay payment details:

Step 5: XPay Processes Insurance Payment

XPay will automatically process the insurance payment using the provided customer token. The insurance transaction will appear as a separate charge on the customer's payment method.

Authentication

The XPay API requires authentication using a JWT token:

Your assigned CSE will provide you with the long-lived JWT token for XPay API access.

Important Notes

PCI Compliance: Partners must be at minimum PCI DSS SAQ A compliant to use XPay token-based payments.

Customer Experience: Inform customers that they will see two separate charges on their payment method - one for the main product and one for insurance.

Merchant of Record: Cover Genius is the merchant of record for the insurance transaction when using XPay.

Token Security: Store XPay JWT tokens securely and never expose them in client-side code.

Error Handling

If the XPay payment fails during the Confirm Offer request:

  • The response will include error details in the errors object

  • The booking will not be confirmed

  • You may need to retry with a different payment method or customer token

  • Inform the customer that the insurance payment failed and offer to retry

Testing

Use the XPay sandbox environment for testing:

  • Test JWT tokens will be provided by your CSE

  • Use test credit card numbers provided in the XPay documentation

  • Sandbox transactions will not result in actual charges

Last updated

Was this helpful?