The Pay by Bank PayIn object

Description

The Pay by Bank PayIn object allows platforms to process open banking payments, where the user authenticates directly with their bank to confirm the payment. Read more

Attributes

IdstringOptional

Max length: 128 characters (see data formats for details)

The unique identifier of the object.

TagstringOptional

Max. length: 255 characters

Custom data that you can add to this object.

CreationDateintegerOptional

Unix timestamp (UTC) of the date and time the object was created.

AuthorIdstringOptional
The unique identifier of the user at the source of the transaction.
DebitedFundsobjectOptional
Information about the debited funds.
CreditedFundsobjectOptional

Information about the credited funds (CreditedFunds = DebitedFunds - Fees).

FeesobjectOptional
Information about the fees.
StatusstringOptional

Returned values: CREATED, SUCCEEDED, FAILED

The status of the transaction.

ResultCodestringOptional

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

ResultMessagestringOptional
The explanation of the result code.
ExecutionDateintegerOptional

Unix timestamp (UTC) of the date and time the status changed to SUCCEEDED, indicating that the transaction occurred. The statuses CREATED and FAILED return an ExecutionDate of null.

TypestringOptional

Returned values: PAYIN, TRANSFER, CONVERSION, PAYOUT

The type of the transaction.

NaturestringOptional

Returned values: REGULAR, REPUDIATION, REFUND, SETTLEMENT

The nature of the transaction, providing more information about the context in which the transaction occurred:

  • REGULAR – Relative to most of the transactions (pay-ins, payouts, and transfers) in a usual workflow.
  • REPUDIATION – Automatic withdrawal of funds from the platform’s repudiation wallet as part of the dispute process (when the user has requested a chargeback).
  • REFUND – Reimbursement of a transaction to the user (pay-in refund), to a wallet (transfer refund), or of a payout (payout refund, only initiated by Mangopay).
  • SETTLEMENT – Transfer made to the repudiation wallet by the platform to settle a lost dispute.
CreditedWalletIdstringOptional
The unique identifier of the credited wallet.
CreditedUserIdstringOptional

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

The unique identifier of the user whose wallet is credited.

FlowDescriptorobjectOptional

Information about the Owner beneficiaries targeted by the pay-in and its subsequent transfers, who must all be KYC/KYB verified when the pay-in request is made (read more).

If the FlowDescriptor.Beneficiaries is sent in the API request, then:

  • The transaction’s CreditedWalletId holder is disregarded in KYC/KYB checks.
  • ALL UserId values in the array must be one of:
    • OWNER whose KYCLevel is REGULAR
    • PLATFORM

The pay-in Status becomes FAILED with ResultCode 002951 if at least one FlowDescriptor.Beneficiaries.UserId is:

  • PAYER
  • OWNER whose KYCLevel is LIGHT

If the FlowDescriptor.Beneficiaries is not sent in the API request, then the CreditedWalletId holder is subject to KYC/KYB checks. This property is optional for backwards compatibility but is recommended for all pay-in flows, even when the CreditedWalletId holder is a PAYER or the same value as one of the FlowDescriptor.Beneficiaries.

PaymentTypestringOptional

Returned values: PAY_BY_BANK

The payment type of the pay-in.

ExecutionTypestringOptional

Returned values: WEB

The execution type of the pay-in.

ReturnURLstringOptional

Max. length: 255 characters

The URL to which the user is returned after the payment, whether the transaction is successful or not.

RedirectURLstringOptional

The URL to which to redirect the user to complete the payment.

Caution: This variable URL is specific to each payment. You must rely on the returned URL in full (host, path, and queries) and not hardcode any part of it.

StatementDescriptorstringOptional

Max. length: 10 characters; only alphanumeric and spaces

Custom description to appear on the user’s bank statement along with the platform name. Different banks may show more or less information. See the Customizing bank statement references article for details.

CountrystringOptional

Allowed values: AT, DE, DK, EE, ES, FI, FR, GB, IE, IT, LV, LT, NL, NO, PL, PT.

The country of residence of the user.

BICstringOptional

The BIC of the user's bank account, which is only returned if it was sent.

If both the IBAN and BIC are provided, one of the two authentication steps required by certain banks may be avoided.

IBANstringOptional

The IBAN of the user's bank account, which is only returned if it was sent.

If both the IBAN and BIC are provided, one of the two authentication steps required by certain banks may be avoided.

PaymentFlowstringOptional

Allowed values: WEB, APP

Default value: WEB

The platform environment of the post-payment flow. The PaymentFlow value combines with the ReturnURL to manage the redirection behavior after payment:

  • Set the value to APP to send the user to your platform's mobile app
  • Set the value to WEB to send the user to a web browser

In both cases you need to provide the relevant ReturnURL, whether to your app or website.

BankNamestringOptional

Allowed values: One of the supported bank names.

The name of the bank, which is only returned if it was sent.

If the BankName is provided, the user doesn't have to select their bank when they are redirected.

CulturestringOptional

Allowed values: DA, CS, DE, EN, ET, ES, FI, FR, IT, LT, LV, NL, NO, PL, PT, SV

Default value: EN

The language in which the Tink open banking page is to be displayed.

SchemestringOptional

Allowed values: One of the supported schemes for the Country.

Default value: The listed instant scheme for the Country. If Country is DK, there is no default and the Scheme must be specified.

The scheme to use to process the payment. Note that some banks may charge additional fees to the user for instant payment schemes.

ProcessingStatusstringOptional

Possible values: PENDING_SUCCEEDED

Parameter that is only returned once the bank wire has been successfully authenticated and initiated by the user but has not yet been received by Mangopay. When the funds are received, the Status changes from CREATED to SUCCEEDED and the ProcessingStatus is no longer returned.

For non-instant schemes, processing can take up to 72 hours but is typically completed within 2 days.