Documentação/Referência da API

API REFERENCE

Cartão-presente

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

Cartão-presente

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

Request parameters11

Required fields first

介绍

pay_methodRequiredstringdata.pay_methodonline
sub_pay_methodRequiredstringdata.sub_pay_methodVoucher
amountRequiredstringdata.amount金额数字。例如 € 24.99 应该写成24.99,欧元金额>=1
currencyRequiredstringdata.currencyEUR
descriptionRequiredstringdata.description订单描述
timeoutRequiredstringdata.timeout过期时间单位分钟(0-1440)
notify_urlRequiredstringdata.notify_url支付完成后异步通知地址
Optional parameters 4
demoOptionalstringdata.demo自定义字段
redirect_urlOptionalstringdata.redirect_url如果使用托管页面,支付完成后跳转地址
cardnumberOptionalstringdata.cardnumber礼品卡卡号(如使用页面跳转托管方式非必填)
pincodeOptionalstringdata.pincode礼品卡密码(如传cardnumber该字段必填)

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

Parâmetros

ParameterTypeDescriçãoObrigatório
data.pay_methodstringonline✓
data.sub_pay_methodstringVoucher✓
data.order_idstring商户的订单ID✓
data.amountstring金额数字。例如 € 24.99 应该写成24.99,欧元金额>=1✓
data.currencystringEUR✓
data.descriptionstring订单描述✓
data.demostring自定义字段—
data.timeoutstring过期时间单位分钟(0-1440)✓
data.redirect_urlstring如果使用托管页面,支付完成后跳转地址—
data.notify_urlstring支付完成后异步通知地址✓
data.cardnumberstring礼品卡卡号(如使用页面跳转托管方式非必填)—
data.pincodestring礼品卡密码(如传cardnumber该字段必填)—

Aplicável a: cartões-presente

Este método de pagamento utiliza o saldo de um cartão-presente para pagar um pedido. Os cartões-presente têm de ser ativados no ponto de venda.

ParâmetroTipoDescriçãoObrigatório
userStringConta do operador de caixa UIDObrigatório
signStringSignatureObrigatório
methodStringv3.CreatePaymentsVoucherObrigatório
timeLongTimestampObrigatório
  • Parameters
ParâmetroTipoDescriçãoObrigatório
pay_methodStringonlineObrigatório
sub_pay_methodStringVoucherObrigatório
order_idStringID do pedido do comercianteObrigatório
amountStringMontante numérico. Por exemplo, € 24.99 deve ser indicado como 24.99; montante em euros >=1Obrigatório
currencyStringEURObrigatório
descriptionStringDescrição do pedidoObrigatório
demoStringCampo personalizadoOpcional
timeoutStringTempo de expiração em minutos (0-1440)Obrigatório
redirect_urlStringURL de redirecionamento após a conclusão do pagamento, ao utilizar a página alojadaOpcional
notify_urlStringURL de notificação assíncrona após o pagamentoObrigatório
cardnumberStringNúmero do cartão-presente (não obrigatório ao redirecionar para a página alojada)Opcional
pincodeStringPIN do cartão-presente (obrigatório se cardnumber for fornecido)Opcional

Signature example:

Parâmetros ordenados e concatenados numa cadeia de consulta no formato de URL

"amount=0.01&cardnumber=6064364245787814896&currency=EUR&demo=test&description=YabandPay test VVV&method=v3.CreatePaymentsVoucher&notify_url=https://www.yabandpay.com/notify&order_id=202405110140188881&pay_method=online&pincode=568971&redirect_url=https://www.yabandpay.com&sub_pay_method=Voucher&time=1546588959&timeout=0&user=YOUR_CASHIER_UID"

Assine a stringA utilizando secret_key

A assinatura resultante é:

"YOUR_SIGNATURE"

Request example:

{
    "user": "YOUR_CASHIER_UID",
    "sign": "YOUR_SIGNATURE",
    "method": "v3.CreatePaymentsVoucher",
    "time": 1546588959,
    "data": {
        "description": "YabandPay test VVV",
        "timeout": "0",
        "pay_method": "online",
        "sub_pay_method": "Voucher",
        "order_id": "YOUR_ORDER_ID",
        "amount": "0.01",
        "currency": "EUR",
        "redirect_url": "https://www.yabandpay.com",
        "notify_url": "https://www.yabandpay.com/notify",
        "demo": "test",
        "cardnumber": "6064364245787814896",
        "pincode": "568971"
    }
}

Response example:

{
    "status": true,
    "code": "200",
    "data": {
        "order_id": "YOUR_ORDER_ID",
        "trade_id": "535ea4a1-917a-bc14-58e2-d1565720af90",
        "amount": "0.01",
        "currency": "EUR",
        "settlement_amount": "0.01",
        "settlement_currency": "EUR",
        "exchange_rate": "1",
        "url": "",
        "state": "processing"
    },
    "message": ""
}

Integração da página alojada:

Utilize este método para validar o número e o PIN do cartão-presente na página alojada pela YabandPay. Neste caso, não envie cardnumber nem pincode. Após a chamada da API, redirecione para o url devolvido para continuar o fluxo de pagamento.

Request example:

{
    "user": "YOUR_CASHIER_UID",
    "sign": "YOUR_SIGNATURE",
    "method": "v3.CreatePaymentsVoucher",
    "time": 1546588959,
    "data": {
        "description": "YabandPay test VVV",
        "timeout": "0",
        "pay_method": "online",
        "sub_pay_method": "Voucher",
        "order_id": "YOUR_ORDER_ID",
        "amount": "0.01",
        "currency": "EUR",
        "redirect_url": "https://www.yabandpay.com",
        "notify_url": "https://www.yabandpay.com/notify",
        "demo": "test"
    }
}

Response example:

{
    "status": true,
    "code": "200",
    "data": {
        "order_id": "YOUR_ORDER_ID",
        "trade_id": "c0d9c0bb-0b40-1cb6-7373-fd1a97c7124e",
        "amount": "0.01",
        "currency": "EUR",
        "url": "https://pay.yabandpay.com/payments/callback/order/YzBkOWMwYmItMGI0MC0xY2I2LTczNzMtZmQxYTk3YzcxMjRl",
        "state": "processing"
    },
    "message": ""
}

Additional information:

Response result:
  1. Um pedido bem-sucedido devolve "status": true.

  2. Um pedido mal-sucedido devolve "status": false.

Recomendamos vivamente utilizar Query Order e Asynchronous Notifications para manter os estados dos pagamentos corretos e atualizados.

Response codes:
StatusCodeMessage
true200
false-1000Internal error
false-104000You have entered an invalid amount
false-104221The voucher has insufficient funds
false-104222Invaild PinCode
false-104223This is an invalid giftcard, we are unable to find the giftcard brand