Payment

This endpoint enables you to process transactions securely and efficiently through our API.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
📘

NOTE

Timeout should be set to at least 30 seconds.
It can take up to 30 seconds to process a transaction.

API Response

NameTypeDescription
statusint1 if the transaction was successful.
0 if the transaction failed.
2 if the transaction needs further verification (see Appendix A and the result element)
external_referencesroot elementThis parameter contains the following 4 child elements.
All these values are pass-thru values, meaning that they will be posted back to you exactly as you entered them in the request.
external_references.transaction_referencestring
external_references.program_idstring
external_references.campaign_idstring
external_references.affiliate_idstring
transactionroot elementThis parameter contains the following 4 child elements.
The child elements contain details of the transaction that was processed.
This element will only be present if your request passed all the parameters validation rules.
transaction.idintVendo's Transaction ID. Save it for your reference.
transaction.amountfloatThe amount of the transaction.
transaction.currencystringThe currency of the transaction.
transaction.datetimestringThe transaction's date time
Formatted using the ISO 8601 with time offset from UTC
subscription_scheduleroot elementThis element will be present if subscription_schedule was specified in the API request.
subscription_schedule.subscription_idintVendo's Subscription ID. Save it for your reference.
card_detailsroot elementThis element will be present if paymentmethod was set to_card and if the response status is 1
This element contains the following 1 child element.
auth_codestringThe credit/debit card auth code.
trace_idstringThe trace_id is a unique identifier assigned by the card scheme network (e.g., Visa, MasterCard) to a transaction processed through our payment gateway. This identifier facilitates future referencing of the transaction within the card scheme network.
sepa_detailsroot elementThis element will be present if payment_method was sepa and if the response status is 1
This element contains the following 2 child elements.
sepa_details.mandate_idstringThe SEPA's Mandate ID
sepa_details.mandate_signed_datestringThe date the Mandate was signed by the user, this is basically, the date time when the user accepted to get charged.
Formatted using the ISO 8601 with time offset from UTC
payment_details_tokenstringTokenized payment details for the current request. Returned only on non-tokenized payments. Save this token and use it for recurring payments without asking the customer to enter their payment details again!
errorroot elementThis element will be present only if the status is 0.
This element contains 3 child elements.
error.codestringVendo's Gateway error code. See full list here.
error.messagestringA brief detail of what went wrong.
error.processor_statusstringThe status code returned by the acquirer or bank. This
resultroot elementThis element will be present if the status is 2, i.e. the transaction was neither accepted nor declined.
This element contains 3 child elements.
result.codestringVendo's Gateway error code. See full list here.
result.messagestringA brief detail of why the transaction was not accepted.
result.verification_urlstringIf this element is provided you must redirect the end user to this URL to complete the verification process (see Appendix A)
request_idstringThis is the request unique identifier that gets created by Vendo's Gateway on each request.
You need to send this value to Vendo's Client Services team when you open a support ticket.
👍

Running test transactions

You must pass the is_test parameter and set it to 1.

❗️

3D Secure / Strong Customer Authentication (SCA)

For an overview of the 3D Secure or other verification process flow, please refer to the detailed outline here.

Body Params
string
required

This is the credential that Vendo will use to authenticate your request

int32

Set to 1 if you want to process a test transaction. Check Appendix A for test card details.

int32
required

Your Vendo Merchant ID. This will be provided by your account manager

int32
required

The Vendo Site ID for which you're processing the transaction.

float
required

The amount that you want to charge the user. Example: 39.95

string
required

The 3-letter currency code of the amount to be charged. Currencies

string

The URL to which the user must be redirected after a successful verification. If it isn't specified then our platform will fallback to the Success URL configured in Vendo's back office.

boolean
Defaults to false

Merchant Initiated Transaction - set this flag to true when performing automatic recurring charges (i.e. rebills). The "mit" flag is false by default, indicating that the customer themselves initiated the transaction.

boolean
Defaults to false

Pre-Authorization Only. Set this flag to true when you do not want to capture the transaction amount immediately, but only validate the payment details and block (reserve) the amount. The capture of a preauth-only transaction can be performed with the Capture API. Only available for "card" type of payment

boolean
Defaults to false

Flags a payment as non-recurring. Set this to true if no MITs (merchant initiated transactions / rebills) will follow automatically. This may increase the chance of the transaction being accepted by some banks.

external_references
object
required

This parameter has the following 4 child elements. All these values are pass-thru values, meaning that we'll post them back to you.

items
object

This parameter has the following 4 child elements. The child elements refer to the items that you're charging the user for.

payment_details
object
required

There are different possible sets of child elements depending on the payment_type: card, sepa, pix, oxxo crypto, paybybank, wallet or tokenized.

customer_details
object
required

REQUIRED for non-tokenized transactions. This node is not allowed for token transactions. This parameter contains the following 10 child elements. Not all of them are mandatory. This element contains the user's personal details.

shipping_address
object

Mandatory shipping address details. If you don't use shipping addresses, you don't have to send this at all.

request_details
object
required

This parameter contains 2 child elements. Not all of them are mandatory.

subscription_schedule
object

Use this parameter to start a S2S Sign-up subscription and schedule automatic rebills. Only supported for payment methods that allow automatic rebills. Not supported for f.ex. PIX, Pay by Bank or Crypto.

cross_sale
object

Use this section to create a S2S Cross Sale. Skip it for other types of transactions..

Responses

Language
LoadingLoading…
Response
Choose an example:
application/json