Confirming a payment intent

The final step is to confirm the payment intent after you have successfully created and attached a payment method (gift card) to the payment intent. Once the payment intent is confirmed, if the gift card does not cover the full balance due, the Toast platform updates the amount value to the amount authorized and captured from the gift card, 2500 ($25.00).

To confirm a payment intent, send a POST request to the /v1/payment-intents/{paymentIntentId}/confirm endpoint of the payment intents API to authorize the payment method. Include the paymentIntentId in the request path. Include the Toast-Restaurant-External-ID as a header parameter. In the request body, include the sessionSecret and paymentMethodId, and the customer's email address if the email was not provided when the payment intent was created or updated.

Example request body

{
    "paymentMethodId": "f43c0c7f-ff56-4a23-99fa-354b82045a09", 
    "sessionSecret": "PI_86bbcf0c-b483-4bbc-81bf-c2a9cd2baa2c_SECRET_EqYQ5^CgQWc4J?KBwq2jfv&Ov", 
    "email": "john.smith@email.com" 
}

Example response body

{
    "id": "86bbcf0c-b483-4bbc-81bf-c2a9cd2baa2c",
    "externalReferenceId": "6df3fe87-5d64-4d1f-97d3-6c4e1b767c17",
    "sessionSecret": "PI_86bbcf0c-b483-4bbc-81bf-c2a9cd2baa2c_SECRET_EqYQ5^CgQWc4J?KBwq2jfv&Ov",
    "amount": 2500, 1
    "currency": "USD",
    "captureMethod": "MANUAL",
    "status": "SUCCEEDED", 2
    "paymentMethodId": "f43c0c7f-ff56-4a23-99fa-354b82045a09",
    "creationDate": "2026-05-21T20:15:00.000Z",
    "customerId": null,
    "amountDetails": {
      "tip": 0
    },
    "email": "john.smith@email.com",
    "paymentMethodConfigurationDetails": {},
    "offSession": false,
    "paymentMethodOptions": {
      "giftCard": {
        "requestPartialAuthorization": true 3
      }
    },
    "latestPayment": { 4
      "id": "9f4b8c12-3a7e-4d1f-b2e5-8c3a1f5d4e7a",
      "paymentIntentId": "f8450373-f2a6-4211-8064-55b57f46c57e",
      "externalReferenceId": "b31a2b46-53f5-4ad9-a2e3-1dc38ff564d5",
      "amount": 2500,
      "amountCaptured": 2500,
      "isPartiallyApproved": true, 5
      "currency": "USD",
      "status": "SUCCEEDED", 6
      "creationDate": "2026-05-21T20:15:01.000Z",
      "modifiedDate": "2026-05-21T20:15:01.000Z",
      "paymentMethodDetails": { 7
        "giftCard": {
          "amountAuthorized": 2500, 8
          "amountRequested": 5000,  9
          "fingerprint": "a1b2c3d4-5e6f-7890-abcd-ef1234567890",
          "firstSix": "601100",
          "funding": "debit",
          "issuer": {
            "cardReferenceId": "c4d5e6f7-8a9b-0c1d-2e3f-4a5b6c7d8e9f",
            "countryCode": "US",
            "name": "TOAST",
            "regulation": "REGULATED"
          },
          "lastFour": "9999",
          "partialAuthorization": { 10
            "status": "PARTIALLY_AUTHORIZED"
          }
        },
        "paymentMethodId": "7e532fea-bf6d-46c9-9f75-aee33d514fca",
        "type": "GIFT_CARD"
      },
      "gatewayResponse": {
        "paymentId": "gif_5f6e7d8c9b0a1b2c3d4e5f6a"
      },
      "processorResponse": {
        "transactionId": "txn_a1b2c3d4e5f6"
      }
    }
}

1

The updated authorized payment amount. If paymentMethodOptions.{type}.partialAuthorization is set to true, the payment intent captures the partial amount and updates the amount value to the partial amount.

Note

The amount is updated by the Toast platform. A request to update the payment intent with the updated amount is not required.

2

The status of the payment intent. A SUCCEEDED status indicates that the partial payment has been captured. For more information, see Payment intent statuses.

3

Indicates that the payment method can be used for partial authorization. If the value is set to true and the payment method does not cover the full check balance, the Toast platform is authorized to capture the partial amount. If the value is set to false, and the payment method does not capture the full check balance, the Toast platform does not capture the partial amount.

4

The latest payment associated with the payment intent.

5

Indicates if the payment has been approved for less than the amount requested.

6

Payment intent statuses. For more information, see Payment intent statuses.

7

Details about each payment method type.

8

The authorized amount in minor units for the payment method type.

9

The amount requested in minor units for the payment method type.

10

The status of the partial authorization:

  • PARTIALLY_AUTHORIZED: Partial authorization was requested for the payment amount and the partial payment amount was captured.

  • FULLY_AUTHORIZED: Partial authorization was requested for the payment amount and the full payment amount was captured.

  • NOT_REQUESTED: Partial authorization was not requested.

  • DECLINED: Partial authorization was not requested for the payment amount. The full amount was available for capture, but you declined to capture the full amount.

Note

If the status is DECLINED, Toast Support recommends you confirm the payment intent with another payment method.


To pay the remaining balance, you must create another payment intent for the remaining $25.00 due. In the request body to create a payment intent, include 2500 for the amount value.

After successfully creating the payment intent, create and attach another payment method, which can be another gift card or payment card. Then confirm the payment intent for the remaining $25.00 with the new payment method.