Documentatie/API-referentie

API REFERENCE

Betaling of autorisatie starten

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

Betaling of autorisatie starten

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

Request parameters11

Required fields first

发起交易

pay_methodRequiredstringdata.pay_methodoffline
sub_pay_methodRequiredstringdata.sub_pay_methodpoint_of_sales
operationRequiredstringdata.operation1.Sales 2.Authorisation;
tidRequiredstringdata.tid设备的TID
amountRequiredstringdata.amount金额数字。例如 € 24.99 应该写成24.99,CNY金额>=1,欧元金额>=0.1
currencyRequiredstringdata.currency货币代码,ISO 4217,例如EUR,CHF
descriptionRequiredstringdata.description订单描述64字符内
notify_urlRequiredstringdata.notify_url支付完成后异步通知地址
request_idRequiredstringdata.request_id请求id需保持唯一,建议24以上位数字+字母
Optional parameters 2
tip_amountOptionalstringdata.tip_amount总金额中包含的小费,金额数字。例如 1.02
demoOptionalstringdata.demo自定义字段

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

Van toepassing op betalingen met een fysieke POS-terminal

Deze API verstuurt via de cloud betaal- of autorisatie-instructies naar een POS-apparaat.

Controleer voordat u deze API aanroept of het POS-apparaat online en beschikbaar is, zodat de instructies succesvol kunnen worden afgeleverd en verwerkt.

API-URL (productie): https://mapi.yabandpay.com/Payments

API-URL (test): https://acc-mapi.yabandpay.com/Payments

Methode:POST

POST gegevenstype:Json

ParameterTypeBeschrijvingVerplicht
userStringApparaat-TIDVerplicht
signStringSignatureVerplicht
methodStringv3.POSVerplicht
timeLongTimestampVerplicht
  • Parameters
ParameterTypeBeschrijvingVerplicht
pay_methodStringofflineVerplicht
sub_pay_methodStringpoint_of_salesVerplicht
operationString1.Verkoop 2.Autorisatie;Verplicht
tidstringApparaat-TIDVerplicht
order_idstringBestelnummer dat uitsluitend uit cijfers bestaat en minder dan 20 tekens bevatVerplicht
amountStringBedrag als numerieke tekenreeks. Voer bijvoorbeeld 24.99 in voor € 24.99. Het CNY-bedrag moet >=1 zijn; het EUR-bedrag >=0.1.Verplicht
tip_amountStringFooi opgenomen in het totaalbedrag, als numerieke tekenreeks; bijvoorbeeld 1.02Optioneel
currencyStringISO-valutacode 4217, bijvoorbeeld EUR of CHFVerplicht
descriptionStringBestelomschrijving, maximaal 64 tekensVerplicht
demoStringAangepast veldOptioneel
notify_urlStringURL voor asynchrone melding na betalingVerplicht
request_idStringUnieke aanvraag-ID; aanbevolen wordt een combinatie van cijfers en letters van ten minste 24 tekensVerplicht

Handtekeningvoorbeeld:

Gesorteerde parameters aaneengevoegd tot een queryreeks in URL-stijl

 "amount=12.5&currency=EUR&description=YabandPay test&method=v3.POS&notify_url=https://www.yabandpay.com/notify&operation=1&order_id=202586556498441613&pay_method=offline&request_id=a7z1lox4l6z6mdx1udgn5gtezasze1x0&sub_pay_method=point_of_sales&tid=T125119061&time=1555498137&tip_amount=0.5&user=T125119061" 

Onderteken stringA met secret_key

De resulterende handtekening is:

"YOUR_SIGNATURE"

Aanvraagvoorbeeld:

 {
  "user": "T125119061",
  "sign": "YOUR_SIGNATURE",
  "method": "v3.POS",
  "time": 1555498137,
  "data": {
    "operation": "1",
    "tid": "T125119061",
    "amount": "12.5",
    "currency": "EUR",
    "tip_amount": "0.5",
    "description": "YabandPay test",
    "notify_url": "https://www.yabandpay.com/notify",
    "order_id": "YOUR_ORDER_ID",
    "pay_method": "offline",
    "sub_pay_method": "point_of_sales",
    "request_id": "a7z1lox4l6z6mdx1udgn5gtezasze1x0"

  }
} 

Antwoordvoorbeeld:

{
  "status": true,
  "code": "200",
  "data": {
    "order_id": "YOUR_ORDER_ID",
    "trade_id": "4552eeea-1ae8-1e40-3b4b-802dc2f56458",
    "amount": "12",
    "currency": "EUR",
    "tip_amount": "0.5",
    "state": "processing"
  },
  "message": ""} 

Aanvullende informatie:

Tip

Belangrijk: wanneer een asynchrone melding "state": "paid" retourneert, heeft de gebruiker de betaling voltooid. Controleer of de geretourneerde gegevens "cvmTypeList": ["SIGNATURE"] bevatten.

Als het antwoord "cvmTypeList": ["SIGNATURE"] bevat, moet de klant de bon ondertekenen;

Vraag de kassamedewerker om de handtekening van de klant en druk een bon met een handtekeningveld af;

Nadat de klant heeft getekend, kiest de kassamedewerker op basis van de handtekening "Handtekening bevestigen" of "Ongeldige handtekening".

Als "Handtekening bevestigen" wordt gekozen, wordt de transactie normaal afgerond;

Als "Ongeldige handtekening" wordt gekozen, roept u onmiddellijk de API voor transactieannulering aan om deze transactie terug te draaien;

Bij onbemande of zelfbedieningsbetalingen kan de handtekeningcontrole achterwege blijven omdat het meestal om kleine bedragen gaat, maar dit brengt een risico op terugboekingen met zich mee.

Resultaat van het antwoord:
  1. Een geslaagde aanvraag retourneert "status": true.

  2. Een mislukte aanvraag retourneert "status": false.

We raden sterk aan om zowel bestellingen op te vragen als asynchrone meldingen te gebruiken om de betalingsstatus te synchroniseren en bij te werken, zodat betalingsinformatie in realtime actueel blijft.

Antwoordcodes:
StatusCodeBericht
true200Success
false-1000Internal error
false-3001Required field is missing
false-3002duplicate request_id
false-403The signature Error
false-4011Not support the payment method