API-overzicht
Start een betaalpoging via een gateway
Kies een handeling voor het request, responsestructuur, toegangsregels en implementatiebron.
SchrijvenGeauthenticeerd
POST/api/v1/orders/{order}/pay
Start een betaalpoging via een gateway
Sanctum-sessie of bearer-token. Vereiste bearer-bevoegdheid: orders.pay
Verzoek
| Veld | In | Regel |
|---|---|---|
order | Padparameter | Verplicht numeriek ID van de ingelogde klant. Vreemde en ontbrekende ID’s geven 404. |
gateway | JSON-body | Verplichte geregistreerde gateway-ID-string; maximaal 40. |
return_url, cancel_url | JSON-body | Verplichte URL’s; elk maximaal 500. De installatie moet de origins toestaan; inloggegevens en fragmenten zijn verboden. |
idempotency_key | JSON-body | Nullable string; maximaal 64. Gebruik niet dezelfde sleutel als voor checkout. |
Idempotency-Key | Header | Optionele terugval alleen als idempotency_key ontbreekt in de body. |
curl --request POST "https://shop.example.test/api/v1/orders/$ORDER_ID/pay" \
--header 'Accept: application/json' \
--header "Authorization: Bearer $API_TOKEN" \
--header 'Content-Type: application/json' \
--data '{"gateway":"<registered-gateway-id>","return_url":"https://shop.example.test/payment-return","cancel_url":"https://shop.example.test/payment-cancel","idempotency_key":"example-payment-01"}'Antwoord200
Succes: 200
Responsestructuur (notatie, geen opgenomen antwoord)
{ data: { attempt_id: integer, status: string, redirect_url: string|null, payment_status: string|null } }Gebruikelijke fouten
| HTTP-status | Betekenis |
|---|---|
401 | unauthenticated: ontbrekende of ongeldige authenticatie. |
403 | unauthorized, insufficient_scope of ip_not_allowed: controleer klantcontext, bevoegdheid en token-IP-beleid. |
404 | not_found: ontbrekende, inactieve of niet-eigen resource. |
422 | validation_error: ongeldige invoer of niet-vervulde domeinvereisten. Betaalinitiatie kan ook payment_failed geven. |
429 | rate_limited: wacht voor een nieuwe poging, vooral bij schrijfverzoeken. |