Enrollments
Create enrollment
Changed onCreates a new enrollment to enable recurring payments for a payer. Use this endpoint for enrollments without an initial payment.
post/enrollments
Request
- Base URLhttps://api.dlocal.com
- URLhttps://api.dlocal.com/enrollments
- AuthAPI key in header X-Date and API key in header X-Login and API key in header X-Trans-Key and API key in header Content-Type and API key in header X-Version and API key in header User-Agent and API key in header Authorization
Request body
Response
Enrollment created. The response structure varies by payment_method_flow:
- REDIRECT: returns a redirect_url.
- DIRECT: returns a ticket object (QR code/copy-paste code) for applicable payment methods.
Webhook notifications
Once the enrollment is processed, dLocal sends an asynchronous notification to the notification_url provided in the request. Enrollment approved
{
"id": "E-664388-3bcb6f88-9e71-4d90-a0e3-751971a5e5d8",
"external_id": "31231jj224",
"currency": "BRL",
"country": "BR",
"type": "MERCHANT_SUBSCRIPTION",
"payment_method_id": "XA",
"payment_method_flow": "REDIRECT",
"payment_method_type": "TICKET",
"created_date": "2024-07-26T20:37:20.000+0000",
"approved_date": "2024-07-26T20:38:10.000+0000",
"status": "ACTIVE",
"status_detail": "The enrollment is active.",
"status_code": "200",
"notification_url": "http://merchantsite.com/notifications"
}
Enrollment rejected
{
"id": "E-664388-3bcb6f88-9e71-4d90-a0e3-751971a5e5d8",
"external_id": "31231jj224",
"currency": "BRL",
"country": "BR",
"type": "MERCHANT_SUBSCRIPTION",
"payment_method_id": "XA",
"payment_method_flow": "REDIRECT",
"payment_method_type": "TICKET",
"created_date": "2024-07-26T20:37:20.000+0000",
"status": "REJECTED",
"status_detail": "The enrollment is rejected.",
"status_code": "300",
"notification_url": "http://merchantsite.com/notifications"
}
Enrollment statuses
| Status | Status code | Description |
|---|---|---|
| PENDING | 100 | The enrollment is awaiting user authorization, or a cancellation is being processed by the bank. |
| ACTIVE | 200 | The enrollment is active and ready for recurring payments. |
| REJECTED | 300 | The enrollment was not authorized or was rejected. |
| CANCELLED | 400 | The enrollment was cancelled by the merchant. |
| CANCELLED | 401 | The enrollment was cancelled by the user directly through their home banking. |
Example response
{
"id": "E-4-32e1218f-b6ec-3f21-13d5-50v12ere2ca3",
"external_id": "31231jj223",
"created_date": "2024-07-26T20:37:20.000+0000",
"status": "PENDING",
"status_code": "100",
"status_detail": "The enrollment is pending.",
"redirect_url": "https://pay.dlocal.com/gmf-apm/payments-redirect/E-4-32e1218f-b6ec-3f21-13d5-50v12ere2ca1",
"ticket": {
"type": "CUSTOM",
"number": "00020101021226850014br.gov.bcb.pix...",
"expiration_date": "2024-11-30T02:59:00.000+0000",
"id": "Ts4ME3E05fFl8PhkNhkcIt4hIE",
"image_url": "https://pay.dlocal.com/gmf-apm/payments/E-4-32e1218f-b6ec-3f21-13d5-50v12ere2ca3",
"provider_name": "apm-bb-pix",
"provider_logo": "https://static.dlocal.com/images/providers/pix.jpg"
},
"payment_method_type": "TICKET"
}Changes
- info
endpoint added
- info