Use Case: Recurring Collections
Problem
Insurers need to automatically collect monthly premiums from their customers using any payment method. This allows them to take the responsibility off of their customers and to avoid the administrative efforts of issuing invoices and tracking down late/non-payments. However, in order to accomplish this, they require the flexibility to connect to multiple payment providers and methods. Single integrations to PSPs are complex, expensive, time-consuming and resource-draining, making it difficult for insurers to innovate.
Solution
Duck Creek Payments acts as your single access point to the payments ecosystem. Payments does all the payment integration heavy-lifting, so you can access all relevant payment providers and methods to process recurring collections. The application is easily integrated with core insurance IT systems to seamlessly interoperate with existing billing processes. By integrating with Payments, your organization can automate the day-to-day operations of processing recurring collections.
Prerequisites
- You have access to the Tenant Portal
- You have generated valid API Keys.
- You have installed and configured the Marketplace Apps with the relevant credentials.
- You have created and configured a Payout Scheme.
- You have a Creditor Profile and Mandate Provider configured in the Tenant Portal if you intend to use Direct Debit as the method of collection.
Supported Apps and Payment
- Bank of America ACH Direct - ACH Debit
- BNZ File Transfer - BECS Direct Debit
- Bottomline - Bacs Direct Debit
- Braintree - Cards
- Checkout.com - Cards
- Citi Group - SEPA Direct Debit
- GoCardless - SEPA and Bacs Direct Debit
- NAB Direct Link - BECS Direct Debit
- Stripe - Cards
- Worldline Saferpay - Cards
Working with Recurring Collections
Step 1: Authenticate
The first step to using Payments API is to authenticate yourself by generating an Access Token.
To learn more on how to authenticate, see Authentication.Step 2: Define Your Payment Intention
Create your Order and Instruction and make a call to the
create-order
endpoint. See Define Your Payment Intention for more information. https://sandbox-api.imbursepayments.com/v2/order-management
Authorization: Bearer {eyJhbGciOiJIUzI1N...9UAUBNuyPN6Xg}
x-account-id: 49bder42-90d9-46b1-b120-f6b347d621a0
x-tenant-id: 60452f48-5d48-4bc0-ab6f-5cr3ee411f63
Content-Type: application/json
{
"orderRef": "order_card_recurring",
"instructions": [
{
"instructionRef": "card_recurring_payment",
"customerRef": "DEEPAK_004",
"direction": "DEBIT",
"financialInstrumentId": "8978725f-c092-0ef6-c811-0bb5064100f1",
"amount": "110.00",
"currency": "GBP",
"country": "GB",
"schemeId": "4E1E8D9F022E7A6A09FAEB71992E7F2F",
"settledByDate": "2022-12-01",
"metadata": {}
}
]
}
Step 3: Check the Payment Status
After the Financial Instrument details of your customer has been submitted to Payments, the application will communicate with the Payment Service Provider (PSP) to handle the transaction. You can check the status of the transaction by polling the APIs. Alternatively, you can also set up a Webhook to notify you every time the transaction status changes.https://sandbox-api.imbursepayments.com/v1/order-management/order_xnv6h1n/instruction/inst_xnv6h1n
Authorization: Bearer {eyJhbGciOiJIUzI1N...9UAUBNuyPN6Xg}
x-account-id: 49bder42-90d9-46b1-b120-f6b347d621a0
x-tenant-id: 60452f48-5d48-4bc0-ab6f-5cr3ee411f63
Content-Type: application/json
{
...
"direction": "DEBIT",
"status": "INCOMPLETE",
"customerRef": "DEEPAK_004",
"amount": 110.00,
"currency": "GBP",
"country": "GB",
"settledByDate": "2022-12-01",
"forecastedSettlementDate": null,
"actualSettlementDate": null,
...
"transaction": {
...
"status": "PROCESSING",
...
},
"failed": null,
"cancelled": null
}