Documentação/Referência da API

API REFERENCE

Pagamento com cartão

POSThttps://mapi.yabandpay.com/Payments
Live API
API PLAYGROUND · Live API

Pagamento com cartão

POSThttps://mapi.yabandpay.com/Payments
Automatically signed with your credentials

Request parameters15

Required fields first

Card Payment

pay_methodRequiredstringdata.pay_methodonline
sub_pay_methodRequiredstringdata.sub_pay_methodCard
operationRequiredstringdata.operation1.Sales 2.Authorisation;
amountRequiredstringdata.amount金额数字。例如 € 24.99 应该写成24.99
currencyRequiredstringdata.currency货币代码,ISO 4217,例如EUR,CHF
descriptionRequiredstringdata.description订单描述
emailRequiredstringdata.email持卡人email
timeoutRequiredstringdata.timeout过期时间单位分钟(0-1440)
notify_urlRequiredstringdata.notify_url支付完成后异步通知地址
request_idRequiredstringdata.request_id请求id需保持唯一,建议24以上位数字+字母
Optional parameters 4
payment_token_objectChoose onestringdata.payment_token_object从YabandPay支付插件获得的字符串cardinfo和payment_token_object二选一
cardinfoChoose onestringdata.cardinfo卡信息cardinfo和payment_token_object二选一,cardinfo的值作为string处理(cardinfo内的字段不用加入排序)
demoOptionalstringdata.demo自定义字段
redirect_urlOptionalstringdata.redirect_url支付完成后跳转地址

请求参数

3ds_initiateRequiredstringdata.3ds_initiate01. 开启3ds验证; 02.不开启3DS(需申请开通);03. SCA豁免(需申请开通);

Credentials stay on this page. Your secret key is never stored or sent to the documentation server.

Para autorizações de cartão e compras diretas

Esta API destina-se a clientes que inserem os dados do cartão na página do estabelecimento, em vez de em uma página hospedada da YabandPay aberta por redirecionamento. Observe que:

  1. Estabelecimentos certificados pelo PCI DSS e capazes de tratar com segurança dados do titular do cartão podem criar seu próprio formulário e enviar os dados por cardinfo.

  2. Se o estabelecimento coletar dados do cartão usando o plugin frontend da YabandPay (entre em contato com a YabandPay para obter instruções de integração), o plugin retornará um payment_token_object criptografado de uso único para a solicitação de pagamento seguinte.

Dica

As autorizações são válidas por 30 dias. As ordens de autorização expiram automaticamente após 30 dias.

ParâmetroTipoDescriçãoObrigatório
userStringConta de caixa UIDObrigatório
signStringSignatureObrigatório
methodStringv3.CreateCardPaymentsObrigatório
timeLongTimestampObrigatório
  • Parâmetros
ParâmetroTipoDescriçãoObrigatório
pay_methodStringonlineObrigatório
sub_pay_methodStringCardObrigatório
operationString1.Sales 2.Authorisation;Obrigatório
order_idStringID do pedido do estabelecimentoObrigatório
3ds_initiateString01. Enable 3DS verification; 02. Disable 3DS (requires activation approval); 03. SCA exemption (requires activation approval).Obrigatório
sca_exemptionStringLowValueObrigatório quando 3ds_initiate=03
payment_token_objectStringString obtained from the YabandPay payment pluginInforme cardinfo ou payment_token_object
cardinfoStringInformações do cartãoInforme cardinfo ou payment_token_object. Treat cardinfo as a string (do not include the fields inside cardinfo in the parameter sorting).
cardinfo.card_holderstringNome do titular do cartãoObrigatório
cardinfo.card_numberstringNúmero do cartãoObrigatório
cardinfo.expiration_monthstringMês de validade do cartão, MMObrigatório
cardinfo.expiration_yearstringAno de validade do cartão, YYYYObrigatório
cardinfo.cvcstringCVC (armazenar o CVC em qualquer formato viola os requisitos do PCI DSS)Obrigatório
amountStringValor como cadeia numérica. Por exemplo, informe 24.99 for € 24.99.Obrigatório
currencyStringCódigo da moeda ISO 4217 currency code, for example EUR or CHFObrigatório
descriptionStringDescrição do pedidoObrigatório
demoStringCampo personalizadoOpcional
emailstringE-mail do titular do cartãoObrigatório
timeoutStringTempo de expiração em minutos (0-1440)Obrigatório
redirect_urlStringURL de redirecionamento após o pagamentoOpcional
notify_urlStringURL de notificação assíncrona após o pagamentoObrigatório
request_idStringID de solicitação exclusivo; recomenda-se uma combinação de letras e números com pelo menos 24 characters is recommendedObrigatório

Exemplo de assinatura:

Parâmetros ordenados concatenados em uma cadeia de consulta no formato de URL

”3ds_initiate=01&amount=0.1&cardinfo={"card_holder":"John Smith","card_number":"4356789012345670","expiration_month":"01","expiration_year":"2023","cvc":"123"}&currency=EUR&description=test&email=JohnSmith@gmail.com&method=v3.CreateCardPayments&notify_url=https://www.yabandpay.com/notify&operation=1&order_id=1756878556&pay_method=online&redirect_url=https://www.yabandpay.com/redirect_url&request_id=a7z1lox4l6z6mdx1udgn5gtezasze1x0&sca_exemption=LowValue&sub_pay_method=Card&time=1756878556&timeout=0&user=YOUR_CASHIER_UID“

Request example using cardinfo:


{
	"user": "YOUR_CASHIER_UID",
	"sign": "YOUR_SIGNATURE",
	"method": "v3.CreateCardPayments",
	"time": 1756878556,
	"data": {
		"description": "test",
		"3ds_initiate": "01",
		"timeout": "0",
		"pay_method": "online",
		"sub_pay_method": "Card",
		"operation": "1",
		"order_id": 1756878556,
		"cardinfo": "{\"card_holder\":\"John Smith\",\"card_number\":\"4356789012345670\",\"expiration_month\":\"01\",\"expiration_year\":\"2023\",\"cvc\":\"123\"}",
		"sca_exemption": "LowValue",
        "email": "JohnSmith@gmail.com",
		"amount": "0.1",
		"currency": "EUR",
        "redirect_url": "https://www.yabandpay.com/redirect_url",
        "notify_url": "https://www.yabandpay.com/notify",
		"request_id": "a7z1lox4l6z6mdx1udgn5gtezasze1x0"
	}
}

Request example using payment_token_object:

{
    "user": "YOUR_CASHIER_UID",
    "sign": "YOUR_SIGNATURE",
    "method": "v3.CreateCardPayments",
    "time": 1720680417,
    "data": {
        "payment_token_object": "4564sf65as4f5awe4ft65awe4gt65ewaa4t65ew4t65ew4t65rew4t",
        "description": "test",
        "3ds_initiate": "01",
        "timeout": "0",
        "pay_method": "online",
        "sub_pay_method": "Card",
        "operation": "1",
        "order_id": "YOUR_ORDER_ID",
        "amount": "1",
        "currency": "EUR",
        "redirect_url": "https://www.yabandpay.com/redirect_url",
        "notify_url": "https://www.yabandpay.com/notify",
        "request_id": "tscqf7ki76o7aem4z1yl1xs72f89fptl"
    }
}

Exemplo de resposta:

{
    "status": true,
    "code": "200",
    "data": {
        "order_id": "YOUR_ORDER_ID",
        "trade_id": "160899f3-f6d9-a8d8-ab5b-82eacdab9c5b",
        "amount": "1.00",
        "currency": "EUR",
        "url": "https://pay.yabandpay.com/payments/callback/order/MTYwODk5ZjMtZjZkOS1hOGQ4LWFiNWItODJlYWNkYWI5YzVi",
        "state": "processing"
    },
    "message": "",
    "response_id": "202407111544200649155078"
}

Informações adicionais:

Resultado da resposta:
  1. Uma solicitação bem-sucedida retorna "status": true.

  2. Uma solicitação malsucedida retorna "status": false.

Redirecione o cliente para url, que foi retornado. Depois de concluir o 3DS nesse endereço, o cliente será redirecionado para redirect_url. Recomendamos fortemente usar Query Order e Asynchronous Notifications para manter os status de pagamento corretos e atualizados. a) Um pedido state of paid indica um pagamento bem-sucedido. b) Um pedido state of authorized indica uma autorização bem-sucedida. Para capturar um pagamento autorizado, chame a API Capture Authorization.

Códigos de resposta:
StatusCodeMessage
true200
false-1000Internal error
false-403The signature Error
false-2001The user not exist
false-3001Required field is missing
false-4118Incorrect request ID