Managed Payments uses the v1 Circle APIs notification subscription system,
which is separate from the CPN Platform v2 webhook system. For CPN Platform
webhook events, see the CPN Platform webhook events
reference.
- Subscription endpoint:
POST /v1/notifications/subscriptions - Setup: Circle APIs notifications quickstart
| Envelope field | Type | Description |
|---|---|---|
clientId | string | Your Circle client identifier. |
notificationType | string | Event type identifier. See Event types. |
version | number | Schema version. Always 1. |
customAttributes | object | Contains clientId. |
<resourceKey> | object | Event-specific data. Key name varies by event type. |
Event types
notificationType | Resource key | Trigger |
|---|---|---|
paymentIntents | paymentIntent | Payment intent created, deposit address ready, or payment received |
payments | payment | Payment status changes (for example, pending or paid) |
addressBookRecipients | addressBookRecipient | Recipient status changes (for example, pending or active) |
payout | payout | Payout status changes (for example, pending, complete, or failed) |
creditTransfer | creditTransfer | Credit transfer status changes (requested, disbursed, or paid) |
Payment intent events
ThepaymentIntents notification fires when a payment intent is created, when a
blockchain deposit address becomes available, or when a payment is received
against the intent.
Status values observed in timeline[].status: created, active
Example paymentIntents payload
Payment events
Thepayments notification fires when a payment status changes.
Status values: pending, paid
Example payments payload
Address book recipient events
TheaddressBookRecipients notification fires when a recipient’s status
changes.
Status values: pending, active
Example addressBookRecipients payload
Payout events
Thepayout notification fires when a payout status changes.
Status values: pending, complete, failed
Example payout payload
Credit transfer events
ThecreditTransfer notification fires when a credit transfer status changes. A
credit transfer represents a draw from a line of credit.
Status values: requested (disbursement requested), disbursed (funds
transferred to wallet), paid (fully repaid; fees invoiced at month end)
Example creditTransfer payload
Credit transfer fields
The following table documents every field in thecreditTransfer.data object.
| Field | Type | Description |
|---|---|---|
id | string (UUID) | Unique identifier for the credit transfer. |
amount | Amount object ({ amount, currency }) | Total amount drawn from the line of credit. |
status | enum: requested, disbursed, paid | Current status of the credit transfer. |
outstanding | Amount object ({ amount, currency }) | Remaining balance to repay. Omitted when status is requested. |
dueDate | ISO 8601 timestamp | When repayment is due. Omitted when status is requested. |
disbursedDate | ISO 8601 timestamp | When funds were disbursed to the wallet. Omitted when status is requested. |
paidDate | ISO 8601 timestamp | When the credit transfer was fully repaid. Omitted unless status is paid. |
createDate | ISO 8601 timestamp | When the credit transfer was created. |
updateDate | ISO 8601 timestamp | When the credit transfer was last updated. |