Last updated: June 4, 2026
Extend the validity of an existing authorization when fulfillment takes longer than the initial authorization period. In the United States, authorizations are valid for 3 days, and up to 29 days in other regions. Reauthorization allows the merchant to keep funds available without requiring the buyer to re-approve payment.
Common scenarios include:
This integration uses the Payments API v2 to reauthorize an existing authorization and generate a new authorization with a refreshed expiration date.
Add the following endpoint to your existing server file from the quick start integration.
# Reauthorize for the same amount
curl -X POST https://api-m.sandbox.paypal.com/v2/payments/authorizations/AUTHORIZATION_ID/reauthorize \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ACCESS_TOKEN" \
-d '{}'
# Reauthorize for a higher amount (up to 115% of original)
curl -X POST https://api-m.sandbox.paypal.com/v2/payments/authorizations/AUTHORIZATION_ID/reauthorize \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ACCESS_TOKEN" \
-d '{
"amount": {
"currency_code": "USD",
"value": "115.00"
}
}'
# Get reauthorization status
curl -X GET https://api-m.sandbox.paypal.com/v2/payments/authorizations/NEW_AUTHORIZATION_ID \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ACCESS_TOKEN"# Reauthorize for the same amount
curl -X POST http://localhost:3000/api/paypal/reauthorize-payment \
-H "Content-Type: application/json" \
-d '{"authorizationID": "5AB67890CD123456E"}'
# Expected success response:
# {"status":"REAUTHORIZED","newAuthorizationId":"8CD12345EF678901A","amount":{"currency_code":"USD","value":"100.00"},"expirationTime":"2024-02-05T10:23:23Z"}
# Reauthorize for a higher amount (up to 115% of original)
curl -X POST http://localhost:3000/api/paypal/reauthorize-payment \
-H "Content-Type: application/json" \
-d '{
"authorizationID": "5AB67890CD123456E",
"amount": {
"currency_code": "USD",
"value": "115.00"
}
}'
# Expected success response:
# {"status":"REAUTHORIZED","newAuthorizationId":"8CD12345EF678901A","amount":{"currency_code":"USD","value":"115.00"},"expirationTime":"2024-02-05T10:23:23Z"}Run the following standard tests on your integration.
| Test scenario | Setup | Expected result |
|---|---|---|
| Successful reauthorization | Create authorization, wait 4+ days, reauthorize for same amount | New authorization created with a fresh expiration date. |
| Reauthorize for higher amount | Reauthorize for 110% of original amount | New authorization created for increased amount. |
| Reauthorize too soon | Attempt within 3 days of original authorization | Error: reauthorization not available yet. |
| Reauthorize expired authorization | Attempt after 30+ days | Error: authorization expired and cannot be reauthorized. |
| Reauthorize more than once | Reauthorize successfully, then attempt again | Error: cannot reauthorize more than once. |