API Reference

Payee account check - TP

The Payee Account Check - TP API allows to check whether the beneficiary's IBAN and name match prior to initiating a payment order.

To know more, read Rabo Banking Link for third parties

Relevant scope for oauth2 access code flow

Scope nameDescription
bip.paymentsbiptp.writePayments from your payment account
📘

Make sure that you use the Authorization and Token URL as provided by the Authorization Services.

Rate Limiting

A default rate limit plan is set for all APIs. The rate limit can be shared or individual (defined per operation). The table below describes the rate limiting for this product.

OperationTypeLimit (API calls / s)Counts towards shared limit
POST /v3/payments/single-credit-transfersShared12Yes
POST /v3/payments/cross-border-credit-transfersShared12Yes
GET /v3/payments/single-credit-transfers/{paymentId}/statusShared12Yes
GET /v3/payments/cross-border-credit-transfers/{paymentId/statusShared12Yes
POST /payments/single-payee-verificationShared12Yes
All (premium) Oauth callsShared12Yes

Requests

You can choose to perform this check before entering a payment instruction. The Payee account check is performed to make sure the payment is not rejected due to mismatch in IBAN Name combination.

The POST Status requests must contain a digital signature. You can generate this digital signature using the private key of your certificate. For the Sandbox environment, you can use an example certificate available in the Signing documentation.

You can verify the payee account check information by sending a POST request to the following endpoint:

POST https://api-sandbox.rabobank.nl/openapi/sandbox/spv/payments/single-payee-verification

To view full list of POST parameters, go to:

  • POST/payments/single-payee-verification

Response

POST Verify name and IBAN of the beneficiary

The response tells you the status of the payee account check :

  • MATCHING - The details are a match. If done together with a payment, the payment is executed immediately.
  • NOT_MATCHING - The details are not a match. If done together with a payment, the payment is rejected.
  • CLOSE_MATCH - The details match closely to what is provided. If done together with a payment, the payment is accepted.

To view the POST parameters, read the endpoint description for:

  • POST/payments/single-payee-verification
{
"result": {
    "resultType": "MATCHING"
}}

Some scenarios, as mentioned below, require specific paymentId(s) in the URL to get the mentioned responses.

Scenarios are mentioned here:

Status CodeResult CodeIBANDescription
200 OKMATCHINGNL60RABO159349508The result of the request is good. You can decide to execute the payment instruction.
200 OKNOT_MATCHINGNL34RABO0305240692The result of the request is good. You can decide decide whether or not to execute the payment instruction.
200 OKCLOSE_MATCHNL03RABO0300000146The result of the request is good. You can decide decide whether or not to execute the payment instruction.
401 UnauthorisedCERTIFICATE_INVALIDUse the value invalid for the header: Signature-Certificate.
401 UnauthorisedCERTIFICATE_MISSINGUse the value missing for the header: Signature-Certificate.
401 UnauthorisedCERTIFICATE_EXPIREDUse the value expired for the header: Signature-Certificate.
401 UnauthorisedCERTIFICATE_BLOCKEDUse the value blocked for the header: Signature-Certificate.
401 UnauthorisedCERTIFICATE_REVOKEDUse the value revoked for the header: Signature-Certificate.
405 Method Not AllowedUse GET instead of POST
503 SERVICE_UNAVAILABLENL03RABO0300000147Forced service unavailable.

Note: These codes are for Sandbox only.

Response statuses

Here is a description of the expected response statuses:

  • MATCHING : The account holder name matches the provided IBAN.
  • NOT_MATCHING : The account holder name does not match the provided IBAN.
  • CLOSE_MATCH : The provided name closely resembles the account holder name.
  • INVALID_NAME_LENGTH : The provided name does not meet the required length constraints.
  • IBAN_UNKNOWN : The provided IBAN is not recognized.
  • ID_OR_NAME_NOT_PROVIDED : Either the account identifier or name is missing in the request.
  • INVALID_NAME : The provided name contains invalid characters or format.
  • ACCOUNT_INACTIVE : The account associated with the IBAN is inactive.