Skip to Main Content
Riverty Docs
riverty logo Docs

Register IBAN

Registers the IBAN of a customer through a pennydrop process. The purpose of the pennydrop is to securely retrieve the customer’s IBAN while minimizing the risk of typographical errors. During the pennydrop flow, a customer performs a payment of 0.01 € (or in Belgium, 0.02 €) as a means of authentication. By performing this micropayment, Riverty receives information about the customer and their bank details, which is used to verify their identity—for example, to confirm that an IBAN really belongs to a specific customer. After completing the payment, the charged amount is refunded. Customers complete this payment through iDEAL (NL) or Bancontact (BE). When the time comes, we will use this verified IBAN to execute direct debit charges.

Path

POST /api/v3/customers/{customerNumber}/direct-debit

Request Parameters

customerNumber
required
string
Account number

Request Body

application/json

iban
string
Max length: 34
Iban number
bic
string
Max length: 11
Bic / Swift Code
countryCode
required
string
Enum:
  • NO
  • SE
  • FI
  • DK
  • DE
  • AT
  • CH
  • NL
  • BE
Country code
conversationLanguage
required
string
Enum:
  • NO
  • SV
  • FI
  • DA
  • EN
  • DE
  • NL
  • FR
The language code used for client communication. If not provided, the system will default to the language configured for the client.
mandateReference
string
Mandate Reference
contractAcceptedDate
string
yyyy-MM-ddTHH:mm:ss.fffffffzzz
Contract Accepted Date
object
existingCustomer
boolean
Is customer an existing customer for merchant
customerSince
string
yyyy-MM-ddTHH:mm:ss.fffffffzzz
Since when customer has been merchant's client
numberOfTransactions
integer
Total number of successful purchases that have been made by the specific consumer

Responses

  • outcome
    string
    Enum:
    • Accepted
    • Pending
    • Rejected
    • Expired
    • Revoked
    Outcome of direct debit registration request
    registrationID
    string
    RegistrationID
    redirectUrl
    string
    RedirectURL
    redirectUrlExpirationTime
    string
    yyyy-MM-ddTHH:mm:ss.fffffffzzz
    ExpirationDate
  • type
    string
    Enum:
    • BusinessError
    • TechnicalError
    • NotificationMessage
    code
    string
    Max length: 100
    Confirmation or error code
    message
    string
    Max length: 4096
    Message content
    customerFacingMessage
    string
    Max length: 4096
    Message to display to customer
    actionCode
    string
    Enum:
    • Unavailable
    • AskConsumerToConfirm
    • AskConsumerToReEnterData
    • OfferSecurePaymentMethods
    • RequiresSsn
    • AskConsumerToIdentify
    • ManualReview
    Action codes
    fieldReference
    string
    Max length: 100
    Reference to field that caused an error
  • 401 Authorization has been denied for this request.
  • 413 Request body too large.
  • 429 Too many requests.
  • 500 Internal server error.
Successful Request

Request Example

    
        {
 "countryCode": "NL",
 "conversationLanguage": "NL"
}
    

Response Example

    
        {
 "outcome": "Pending",
 "redirectUrl": "https://bank-account.bnpl.riverty.io/bank-account/3237f09b40b9408dbadbccb8d556e8f2",
 "registrationID": "3237f09b40b9408dbadbccb8d556e8f2",
 "redirectUrlExpirationTime": "2024-05-31T06:49:03Z"
}