Description

Mangopay relies on the Recurring PayIn Registration object to store all the relevant information about a series of recurring card pay-ins, such as the frequency, the end date, and the amount.

For more information about the flows and setup of recurring card pay-ins, refer to the recurring card processing guide.

Attributes

Id
string

The unique identifier of the object.

Status
string

Returned values: CREATED, AUTHENTICATION_NEEDED, IN_PROGRESS, ENDED

The status of the recurring registration:

  • CREATED – The recurring registration was created, but no recurring pay-in has yet been made.
  • AUTHENTICATION_NEEDED – The latest recurring pay-in linked to the registration object was refused. The registration object can still be used, but you need to execute a new customer-initiated transaction (CIT) for the end user to reauthenticate.
  • IN_PROGRESS – The recurring registration object is in use and the subsequent corresponding recurring pay-ins can be made.
  • ENDED – The recurrence ended: the registration can no longer be modified nor reused.
ResultCode
string

The code indicating the result of the operation. This information is mostly used to handle errors or for filtering purposes.

ResultMessage
string

The explanation of the result code.

CurrentState
object

Information about the recurring pay-ins related to the registration object.

Note: If the LastPayinId references a transaction older than 13 months, it may have been archived.

RecurringType
string

Returned values: CLASSIC_SUBSCRIPTION, FRACTIONED_PAYMENT, CUSTOM

The type of recurrence, which can be one of the following:

  • CLASSIC_SUBSCRIPTION – For fixed-amount subscriptions. The Amount of each pay-in and the subscription’s EndDate are known, and these values cannot be modified during the recurrence.
  • FRACTIONED_PAYMENT – For payments in 3 or 4 times. The Amount of each pay-in and the registration’s EndDate are known, and these values cannot be modified during the recurrence.
  • CUSTOM – For recurring registrations where the Amount and EndDate are unknown.
TotalAmount
object

The total amount in the registration.
This value is automatically calculated based on the EndDate, FixedNextAmount, and Frequency parameters (if defined).

CycleNumber
integer

The number of cycles in the registration (and therefore the number of payments).
This value is automatically calculated based on the EndDate, FixedNextAmount, and Frequency parameters (if defined).

AuthorId
string

The unique identifier of the user at the source of the transaction.

CardId
string

The unique identifier of the Card object, obtained during the card registration process.

CreditedUserId
string

Default value: The unique identifier of the owner of the credited wallet.

The unique identifier of the user whose wallet is credited.

CreditedWalletId
string

The unique identifier of the credited wallet.

Billing
object

Default value: FirstName, LastName, and Address information of the Shipping object if any, otherwise the user (author).

Information about the end user billing address. If left empty, the default values will be automatically taken into account.

Shipping
object

Default value: FirstName, LastName, and Address information of the Billing object, if supplied, otherwise of the user (author).

Information about the end user’s shipping address.

EndDate
timestamp

The date and time at which the recurring pay-ins will end. This value has no impact on the recurring registration Status.
Caution: If the EndDate is left unspecified, please bear in mind that one could be defined by default and be displayed to your end users (not taken into account in the payment recurrence).

Frequency
string

Returned values: Daily, Weekly, TwiceAMonth, Monthly, Bimonthly, Quarterly, Semiannual, Annual, Biannual

The frequency at which the recurring pay-ins will occur:

  • Daily – 1 transaction per day.
  • Weekly – 1 transaction every 7 days.
  • TwiceAMonth – 2 transactions per month.
  • Monthly – 1 transaction per month.
  • Bimonthly – 1 transaction every 2 months.
  • Quarterly – 1 transaction every 3 months.
  • Semiannual – 1 transaction every 6 months.
  • Annual – 1 transaction per year.
  • Biannual – 1 transaction every 2 years.
FixedNextAmount
boolean

Whether or not the recurring pay-ins’ debited amounts remain the same for all the pay-ins linked to the recurring registration object.

FractionedPayment
boolean

Whether or not the recurring pay-ins are being made to split a payment in several installments.

FreeCycles
integer

The number of initial consecutive pay-ins where there will be no debited funds nor fees.
This value cannot exceed the CycleNumber value (for recurring objects with an EndDate, FixedNextAmount, and Frequency).
Note: When creating a recurring pay-in (MIT) for a pay-in subject to a free cycle, the DebitedFunds and Fees parameters should be ignored. Otherwise, the pay-in will fail with the corresponding error returned.

FirstTransactionDebitedFunds
object

The amount of the first recurring pay-in.
This value can be different from the NextTransactionDebitedFunds

FirstTransactionFees
object

The fees of the first recurring pay-in.
This amount can be different from the NextTransactionDebitedFunds.

NextTransactionDebitedFunds
object

The amount of the subsequent recurring pay-ins. If this field is empty and either FixedNextAmount or FractionedPayment are true, the subsequent amount will be the same as FirstTransactionDebitedFunds amount.

NextTransactionFees
object

The fees of the subsequent recurring pay-ins.

Migration
boolean
deprecated

Whether or not to attempt the first recurring pay-in as a merchant-initiated transaction (MIT).

Caution: Migration is no longer supported and any object with Migration set to true must not be used for re-authentication of the user. You must create a new recurring pay-in registration without the Migration parameter (false by default) and restart the recurrence (see the how-to guide for details).

Existing objects with Migration set to true are likely to fail or no longer be usable. This may be indicated by the Status changing to AUTHENTICATION_NEEDED or by errors on the pay-in request, for example: non-existent card account (008008), soft decline (101305), expired card (101105), or stolen card (008003).

ProfilingAttemptReference
string

The unique reference generated for the profiling session, used by the fraud prevention solution to produce recommendations for the transaction using the profiling data.

Note: Parameter not returned by the API. Profiling feature available on request – contact Mangopay from the Hub for more information.

Guide

Learn more about recurring card payments