Cost+Docs

Autoriseerimised, hõivamised ja tühistamised

Hallake makse autoriseerimise, hõivamise ja tühistamise voogusid

Mõned makseviisid toetavad kaheastmelist voogu: kõigepealt autoriseerimine (vahendite reserveerimine), seejärel hõivamine (vahendite kogumine) või tühistamine (reserveeringu vabastamine).

Hõivamisrežiimid

Määrake tellimusel capture_mode, et kontrollida, millal vahendid hõivatakse:

RežiimKäitumine
manualHõivate selgesõnaliselt, kui olete valmis (nt pärast saatmist). Kui te ei hõiva enne tellimuse aegumist, autoriseerimine kaotatakse ja seda ei saa enam hõivata.
delayedVahendid hõivatakse automaatselt hetkel, kui expiration_period möödub.
POST /v1/orders/ (käsitsi hõivamine)
{
  "currency": "EUR",
  "amount": 5000,
  "capture_mode": "manual",
  "return_url": "https://www.example.com",
  "webhook_url": "https://www.example.com/webhook",
  "transactions": [
    {
      "payment_method": "credit-card"
    }
  ]
}

manual hõivamisega peate hõivama enne tellimuse aegumisperioodi lõppu. Pärast aegumist vabastatakse autoriseerimine ja vahendeid ei saa hõivata. Määrake oma täitmise ajakavale sobiv expiration_period.

Saate määrata capture_mode tellimuse tasemel ilma transactions määramata. Sel juhul kuvatakse hostitud makselehel ainult makseviise, mis toetavad määratud hõivamisrežiimi.

Hõivatavate summade kontrollimine

Enne hõivamist saate kontrollida, kui palju on hõivamiseks saadaval, pärides amount_details:

curl -u YOUR_API_KEY: \
  "https://api.costplus.online/v1/orders/{order_id}/?fields[]=amount_details"

Vastus sisaldab amount_details objekti:

{
  "amount": 5000,
  "amount_details": {
    "capturable": 5000,
    "captured": 0,
    "refundable": 0,
    "refunded": 0,
    "voidable": 5000,
    "voided": 0
  }
}

Tellimuse read

Kui kasutate hõivamisi ja tühistamisi tellimuse rea kaupa, kasutage järgmisi tüüpe:

TüüpKirjeldus
physicalFüüsiline toode
discountAllahindluse summa
shipping_feeSaatmiskulu
sales_taxKäibemaks
digitalDigitaalne toode
gift_cardKinkekaart
store_creditPoe krediit
surchargeLisatasu

Maksete hõivamine

Hõivamine tellimuse rea kaupa

POST /v1/orders/{id}/transactions/{transaction_id}/captures/orderlines
Päringu keha
{
  "description": "Shipping item #1",
  "order_line": {
    "merchant_order_line_id": "item-001",
    "quantity": 1
  }
}

Hõivamine summa järgi

POST /v1/orders/{id}/transactions/{transaction_id}/captures/amount
Päringu keha
{
  "description": "Partial capture",
  "amount": 2500
}

Maksete tühistamine

Tühistamine vabastab autoriseeritud vahendid tagasi kliendile.

Tühistamine tellimuse rea kaupa

POST /v1/orders/{id}/transactions/{transaction_id}/voids/orderlines
Päringu keha
{
  "description": "Voiding item #2",
  "order_line": {
    "merchant_order_line_id": "item-002",
    "quantity": 1
  }
}

Tühistamine summa järgi

POST /v1/orders/{id}/transactions/{transaction_id}/voids/amount
Päringu keha
{
  "description": "Partial void",
  "amount": 1500
}

Päringuparameetrid

Lisage päringuparameetrid, et lisada vastusesse täiendavaid üksikasju:

ParameeterKirjeldus
?fields[]=order_line_detailsLisab tellimuse ridade jaotuse
?fields[]=amount_detailsLisab summade jaotuse

Optimistlik lukustamine

Hõivamise ja tühistamise lõpp-punktid toetavad ETag-põhist optimistlikku lukustamist if-match päise kaudu. See hoiab ära võistlustingimused, kui mitu süsteemi proovivad sama tehingut hõivata.

Hõivamine optimistliku lukustamisega
curl -X POST https://api.costplus.online/v1/orders/{id}/transactions/{tid}/captures/amount \
  -u {api_key}: \
  -H "Content-Type: application/json" \
  -H "if-match: \"etag-value\"" \
  -d '{"description": "Capture", "amount": 2500}'

Kui ETag ei vasta (tellimust on muudetud pärast viimast pärimist), saate vastuse 412 Precondition Failed.

Cost+ toetab ühte hõivamist autoriseerimise kohta ja tühistamisi saab töödelda ainult enne hõivamist. Planeerige oma hõivamisstrateegia vastavalt.

Seotud lõpp-punktid

On this page