Capture payments for an existing Order.

This endpoint is only relevant to Fully Hosted and Custom integrations.

If you’re building with a Forage SDK, then use the Payments endpoints.

Learn more about the high-level phases of an SDK integration in the Forage JS Quickstart, or check out the Payments API introduction for a list of resources by integration type.

This request will attempt to process all payments associated with the referenced Order.

The Order will first be checked for a consistent state, i.e. all associated payments must add up to the order total and the amounts charged to an EBT payment method cannot exceed the SNAP eligible total. If these checks fail, you will receive a 400 response and no payment methods will be charged.

Payments are always processed in a consistent order. Payments to an EBT Card are processed first. If there are any errors encountered when processing a EBT payment, then the Forage backend will not attempt to process any further payment methods.

Once EBT payments have been processed successfully, the Forage backend will attempt to process the charges to non-EBT cards.

Once all payments are processed successfully,

  • The status of the Order will be updated to succeeded
  • A POST request will be made to your client indicating whether the Order succeeded or failed.

Note that 2 PIN entries must be posted in the request body if there are payments on both the EBT SNAP and EBT Cash accounts. The server will only look at the PIN data if it is needed to process any associated payments. Pass an emptry string if the PIN data is not needed.