Overview
Migrate from the Payment Link API to the Checkouts API for improved reliability and a modernized response schema. This guide covers the key changes and provides code examples to help you update your integration.Migration summary
Migration summary
Key differences
| Component | Payment Link API | Checkouts API |
|---|---|---|
| Base URL | https://business.coinbase.com/api/v1/payment-links | https://business.coinbase.com/api/v1/checkouts |
| Resource name | Payment Link | Checkout |
| Path parameter | paymentLinkId | id |
| List response key | paymentLinks | checkouts |
Webhook event mapping
| Payment Link API Event | Checkouts API Event |
|---|---|
payment_link.payment.success | checkout.payment.success |
payment_link.payment.failed | checkout.payment.failed |
payment_link.payment.expired | checkout.payment.expired |
Migration checklist
1. Update API integration
- Update base URL to
https://business.coinbase.com/api/v1/checkouts - Update path parameter from
paymentLinkIdtoid - Update list response parsing from
paymentLinkstocheckouts
2. Update webhook subscriptions
- Create new webhook subscriptions with
checkout.*event types - Keep existing
payment_link.*subscriptions until migration is complete - Delete old subscriptions once fully migrated
3. Update status handling
- Status values are identical (
ACTIVE,PROCESSING,DEACTIVATED,EXPIRED,COMPLETED,FAILED) - No changes to fulfillment logic for status transitions
4. Test and validate
- Test in the sandbox environment
- Verify all webhook event types are handled correctly
- Verify redirect URLs still function correctly
5. Monitor and observe
- Keep both subscriptions running in parallel during transition
- Monitor for any missed events
- Cut over fully once confident in new integration
What to read next
- API & Schema Mapping - Detailed endpoint and response comparisons with code examples
- FAQ - Common questions and troubleshooting