Creating a hosted checkout session

To start a hosted checkout experience in your app, you must make two API calls. First, you request a new session by sending a POST request to the /invoicingcheckoutservice/v1/checkouts endpoint. Then, use the returned token to start the session by making a second POST request to the /invoicingcheckoutservice/v1/checkouts/{checkoutSessionId} endpoint.

  1. Construct a CreateCheckoutRequest with the following required information:
    • customer.firstName
    • customer.lastName
    • customer.phoneNumber
    • customer.email
    • shoppingCart
  2. Set the required X-Clover-Merchant-Id header with the value of the merchant UUID.
  3. Set the Authorization header with a valid OAuth token.
  4. Send the POST request to {baseUrl}/invoicingcheckoutservice/v1/checkouts.

The response includes the following elements:

  • href - A URL for the checkout session
  • checkoutSessionId - A unique session identifier
  • createdTime - Time the session was created (in Unix time)
  • expirationTime - Time when the checkout session will expire (in Unix time)

If you have configured webhooks, one is sent when the customer finishes checkout.

Checkout session timeout

Hosted checkout sessions are intended to be short-lived. Session tokens expire 15 minutes after creation.


Did this page help you?