Skip to main content

Devengo

Introduction

Devengo is a payment service that works through bank transfers. It only works with orders where the indicated operative is PAYOUT.

In order to use this service, it is necessary to register a bank account.

Once we have our bank account created:

  1. Create new order.
  2. Call the /payment/payout endpoint. The source_uuid field is required, while the apm field should not be sent, as it has no effect on this service. PAYOUT

Testing successful transfers in sandbox

In sandbox environment, it is recommended to use a maximum amount of 1€ (amount = 100)

The iban codes that can be used for testing are as follows:

Bank account for successful transfers

IBAN
ES9067130002000000458102

Bank accounts for refused transfers

IBANError descriptionError code
ES3930350000020000000201blocked_accountERR-0001
ES3930350000020000000104closed_accountERR-0002
ES9030350000070000000202integration_errorERR-0003
ES2530350000030000000501invalid_bankERR-0004
ES2330350000000000000005recoverableERR-0005
ES9530350000050000000210suspended_bankERR-0006
ES7430350000090000000101wrong_account_numberERR-0007
ES5530350000000000000302wrong_amountERR-0008
ES1730350000040000000305wrong_operation_codeERR-0009
ES1730350000040000000402otherERR-0010

Verification of Payee (VoP)

Devengo optionally allows adding a Verification of Payee (VoP) step to payouts. When enabled, Devengo performs an account ownership verification just before executing the payout.

VoP is configured through extra_data.payment.vop:

"extra_data": {
"payment": {
"vop": {
"enabled": true,
"accepted_verification_results": ["MATCH", "NO_MATCH"],
"skip_on_error": true
}
}
}

VoP Fields

FieldTypeDescription
enabled requiredbooleanActivates VoP. When true, Devengo performs the verification before executing the payout.
accepted_verification_resultsstring[] (enum)List of VoP outcomes considered valid to proceed. If the verification result is not included in this list, the payout will not be executed. If omitted or empty, the payout always continues regardless of the VoP result. Each element must be one of: MATCH, NO_MATCH, CLOSE_MATCH, VERIFICATION_CHECK_NOT_POSSIBLE.
skip_on_errorbooleanWhen true, transient VoP errors (timeouts, service unavailable…) do not block the payout. If omitted or false, such errors may block it.

VoP Testing in Sandbox

The following IBANs allow simulating different VoP outcomes:

IBANExpected ResponseDescription
ES8569400001160529041877rejectedAlways returns a rejected verification.
ES6769400001110836662135failed (NO_MATCH)Always returns a failed verification.
ES3369400001190536473836confirmed (CLOSE_MATCH)Always returns a close match.
Any other IBANconfirmed (MATCH)Always returns a full match.