Recurring Payment

Execute Payments automatically

Introduction:

Recurring payment enables you to deduct amounts from your customers on a regular or irregular basis. The recurring payment is useful for subscriptions, installments, and unscheduled deductions.


How it works

There are two ways of managing recurring payments with MyFatoorah.

1- Utilizing MyFatoorah Recurring Payment

In this implementation, you will use MyFatoorah RecurringModel in the ExecutePayment endpoint to specify:

  • How often you want the deduction to take place
  • The number of deductions

The subsequent deductions will be made in the same amount as the initial payment.

When you send the request to MyFatoorah, MyFatoorah returns in the response the RecurringId.

The Iteration parameter determines how many times you will charge the customer for your services. If the Iteration parameter is set to "0", it will be an unlimited time of charging the customer until you cancel the recurring.

The RecurringType parameter defines the interval time of charging the customer again with the same amount sent in the ExecutePayment endpoint request. The value of the RecurringType parameter is as follows

  • Custom
  • Daily
  • Weekly
  • Monthly

If you choose any value of the previous choices except the "custom" value, the interval days parameter will be ignored. In the case of choosing the "Custom" as the RecurringType, then you should set the value of the IntervalDays between 1 and 180 days based on your business needs.

The RetryCount parameter is used to set the number of times that the system should retry a failed recurring payment before stopping the subscription cycle. It is an optional parameter, and it is between 0 to 5. The retry process is done every day until the counter becomes zero or the invoice gets paid. The counter is reset with each iteration.

Once you have initiated a Recurring Payment, the status of the recurring will be "Draft" until the user pays the invoice. After that, the recurring status becomes "Active".

You have to save the RecurringId in your system with your customer profile so that, you can keep track of all payments done against that customer. Moreover, you will be able to cancel it when needed later on.

👍

Testing Recurring

To test the Recurring on the public API Key, you can use PaymentMethodId: 2 in the request to ExecutePayment endpoint.

📘

Requirements

Kindly, contact your account manager or sales representative to activate the Recurring feature. Make sure to know what payment methods will support the recurring payment.

📘

Use Case

MyFatoorah Recurring is useful for subscription payments and installments.

You can implement the MyFatoorah Managed Recurring Payment in two payment flows:

Checking Recurring Payment Status:

After the payment is made, you can call GetRecurringPayment endpoint to get the status of the RecurringId and how many deductions took place on it. For more information, please check GetRecurringPayment.

We strongly recommend implementing the Webhook for recurring to get a webhook event for every deduction attempt on the RecurringId and its status.

2- Vendor Managed Recurring Payment

Vendor Managed Recurring gives you full control over the subsequent deductions from the client.

In this implementation, you will make the deductions from your side fully deciding how much you want to deduct, how often, and how many times.

For more information about the implementation, please check Vendor-Managed Recurring

📘

Use Case

Vendor Managed Recurring is useful for subsciprtion payments, installments and unscheduled recurring payment.