Payment Intents

Process payment intent after client-side confirmation

Processes a payment intent that has been confirmed on the client side. Polls the database for payment intent status to become succeeded. Returns the current status of the payment intent; on success, the response is enriched with the Purchase row created by the webhook handler.

post/v1/sdk/payment-intents/{processorPaymentId}/process

Path parameters

processorPaymentIdstring required
Example:pi_1a2b3c4d5e6f7g8h

Payment processor ID returned from createPaymentIntent

Request body

customerRefstring required
planRefstring
productRefstring

Response

Payment intent status with optional purchase enrichment on success

OR
OR
OR
OR
OR
OR

Example response

{
  "purchase": {
    "amount": 9900,
    "cancellationReason": "Customer request",
    "cancelledAt": "2025-10-28T10:00:00Z",
    "currency": "GBP",
    "endDate": "2025-11-27T10:00:00Z",
    "exchangeRate": 1.32,
    "originalAmount": 7500,
    "planRef": "pln_abc123",
    "productName": "API Gateway Manager",
    "productRef": "prd_abc123",
    "reference": "pur_1A2B3C4D",
    "startDate": "2025-10-27T10:00:00Z",
    "status": "active"
  },
  "status": "succeeded",
  "type": "recurring"
}

Changes

Changed in 4 of the 27 revisions of this API.552

  • bbc2ff2bc84913See the full diff
    • added to the response body oneOf list for the response status

      response-body-one-of-added

    • the request property's maxLength was set to 20

      request-property-max-length-set

    • the request property's maxLength was set to 20

      request-property-max-length-set

    • the request property's maxLength was set to 20

      request-property-max-length-set

  • a30b6aef464d222See the full diff
    • added to the response body oneOf list for the response status

      response-body-one-of-added

    • the response's body type changed from object to no type for status

      response-body-type-changed

    • removed the optional property from the response with the status

      response-optional-property-removed

    • removed the optional property from the response with the status

      response-optional-property-removed

    • the request property became optional

      request-property-became-optional

    • added response discriminator for the response status

      response-body-discriminator-added

    This revision also has 3 changes that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog

    • the response's body type changed from object to no type for status

      response-body-type-changed

    This revision also has 192 changes that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog

    • the response's body type changed from no type to object for status

      response-body-type-changed