Future Cancellation Subscription
Integrators will be able to set a future date cancellation on a subscription. Listed below are the details on how this can be achieved.
1. Get Subscription
[GET] https://api-sandbox.ezypay.com/v2/billing/subscriptions/{{Subscription_Id}}
{
"id": "ffe30113-d39a-4bee-88ad-0570a515a6ea",
"customerId": "aaf40599-0fbc-44d3-8902-55365c6de9e5",
"planId": "adff8a30-5032-4202-833c-5abb7b229dcf",
"name": "Testing using ongoing plan",
"status": "ACTIVE",
"startDate": "2019-06-28",
"endDate": "2019-11-01",
"paymentMethodToken": "0890e4f9-71b7-468a-bff6-199bb979daab",
"accountingCode": "ABC123_NSW",
"amount": {
"currency": "AUD",
"value": 200,
"type": null
},
"tax": {
"rate": 10
},
"nextBillingDate": "2019-07-12",
"nextFutureInvoice": {
"subscriptionId": "ffe30113-d39a-4bee-88ad-0570a515a6ea",
"date": "2019-07-12",
"cycleStartDate": "2019-07-12",
"cycleEndDate": "2019-07-25",
"items": [
{
"description": "Testing using ongoing plan",
"amount": {
"currency": "AUD",
"value": 200,
"type": null
},
"tax": {
"rate": 10
},
"type": "subscription_payment",
"accountingCode": "ABC123_NSW"
},
{
"description": "Transaction Fee",
"amount": {
"currency": "AUD",
"value": 2.98,
"type": null
},
"tax": {
"rate": 10
},
"type": "transaction_fee",
"accountingCode": null
}
],
"amount": {
"currency": "AUD",
"value": 202.98,
"type": null
},
"totalTax": {
"currency": "AUD",
"value": 18.45,
"type": null
}
},
"interval": 2,
"intervalUnit": "WEEK",
"totalPaid": {
"currency": "AUD",
"value": 200,
"type": null
},
"totalBillingCycles": 1,
"remainingToPay": {
"currency": "AUD",
"value": 1800,
"type": null
},
"remainingBillingCycles": null,
"endTargetAmount": {
"currency": "AUD",
"value": 2000,
"type": null
},
"endTargetBillingCycles": null,
"cancelledDate": null,
"failedPaymentHandling": null,
"failedAttemptsCount": 0,
"totalPastDue": {
"currency": "AUD",
"value": 0,
"type": null
},
"totalDiscounted": {
"currency": "AUD",
"value": 0,
"type": null
},
"metadata": null,
"createdOn": "2019-06-28T07:24:44.669",
"autoPayment": true,
"setupPayments": null
}
2. Update Future Cancellation Subscription Date
[PUT] https://api-sandbox.ezypay.com/v2/billing/subscriptions/{{Subscription_Id}}/cancel
This feature allows an integrator to determine when a future end date for the subscription will be set.
{
"cancellationDate":"{{cancellation date}}"
}
{
"id": "93cbe6dc-ea24-4fc3-930f-b3b6562938ec",
"customerId": "aaf40599-0fbc-44d3-8902-55365c6de9e5",
"planId": "bff146cb-871d-4618-8b9f-215cd72c3e67",
"name": "Test Subscription 006",
"status": "PENDING_CANCELLATION",
"startDate": "2019-06-25",
"endDate": "2019-10-29",
"paymentMethodToken": "0890e4f9-71b7-468a-bff6-199bb979daab",
"accountingCode": "ABC123_NSW",
"amount": {
"currency": "AUD",
"value": 200,
"type": null
},
"tax": {
"rate": 10
},
"nextBillingDate": "2019-07-09",
"nextFutureInvoice": null,
"interval": 2,
"intervalUnit": "WEEK",
"totalPaid": {
"currency": "AUD",
"value": 200,
"type": null
},
"totalBillingCycles": 1,
"remainingToPay": {
"currency": "AUD",
"value": 1800,
"type": null
},
"remainingBillingCycles": null,
"endTargetAmount": {
"currency": "AUD",
"value": 2000,
"type": null
},
"endTargetBillingCycles": null,
"cancelledDate": "2019-07-05",
"failedPaymentHandling": null,
"failedAttemptsCount": 1,
"totalPastDue": {
"currency": "AUD",
"value": 0,
"type": null
},
"totalDiscounted": {
"currency": "AUD",
"value": 0,
"type": null
},
"metadata": null,
"createdOn": "2019-06-25T07:43:58.791",
"autoPayment": true,
"setupPayments": null
}
3. Remove a Future Cancellation Subscription
[POST] https://api-sandbox.ezypay.com/v2/billing/subscriptions/{{subscription_Id}}/undo-cancel
{
"id": "93cbe6dc-ea24-4fc3-930f-b3b6562938ec",
"customerId": "aaf40599-0fbc-44d3-8902-55365c6de9e5",
"planId": "bff146cb-871d-4618-8b9f-215cd72c3e67",
"name": "Test Subscription 006",
"status": "ACTIVE",
"startDate": "2019-06-25",
"endDate": "2019-10-29",
"paymentMethodToken": "0890e4f9-71b7-468a-bff6-199bb979daab",
"accountingCode": "ABC123_NSW",
"amount": {
"currency": "AUD",
"value": 200,
"type": null
},
"tax": {
"rate": 10
},
"nextBillingDate": "2019-07-09",
"nextFutureInvoice": null,
"interval": 2,
"intervalUnit": "WEEK",
"totalPaid": {
"currency": "AUD",
"value": 200,
"type": null
},
"totalBillingCycles": 1,
"remainingToPay": {
"currency": "AUD",
"value": 1800,
"type": null
},
"remainingBillingCycles": null,
"endTargetAmount": {
"currency": "AUD",
"value": 2000,
"type": null
},
"endTargetBillingCycles": null,
"cancelledDate": null,
"failedPaymentHandling": null,
"failedAttemptsCount": 1,
"totalPastDue": {
"currency": "AUD",
"value": 0,
"type": null
},
"totalDiscounted": {
"currency": "AUD",
"value": 0,
"type": null
},
"metadata": null,
"createdOn": "2019-06-25T07:43:58.791",
"autoPayment": true,
"setupPayments": null
}
NOTE:
Only Subscriptions that are pending cancellation can be undone. Once the subscription is cancelled, it cannot be undone.
Updated almost 2 years ago