Statusforespørsler
Sjekk ordre- og transaksjonsstatuser
Hver betaling i Cost+ representeres av en ordre som inneholder én eller flere transaksjoner. Du kan sjekke gjeldende status for enhver ordre ved å spørre API-et, enten ved polling eller ved å stole på webhooks.
Hente ordrestatus
Send en GET-forespørsel til /v1/orders/\{id\}/ for å hente det fullstendige ordreobjektet inkludert gjeldende status og alle tilknyttede transaksjoner.
GET /v1/orders/b9ae6.../Selv om polling fungerer for å sjekke ordrestatus, er webhooks den anbefalte tilnærmingen for produksjonsintegrasjoner. De gir sanntidsvarsler uten belastningen av gjentatte API-kall.
Ordrestatuser
En ordre går gjennom følgende statuser:
| Status | Endelig | Beskrivelse |
|---|---|---|
new | Nei | Ordren er nettopp opprettet. Ingen betalingsforsøk er gjort ennå. |
processing | Nei | Et betalingsforsøk pågår. Kunden kan være i ferd med å fullføre 3D Secure eller et annet verifikasjonstrinn. |
error | Nei | Betalingsforsøket mislyktes. Kunden kan forsøke på nytt med samme eller en annen betalingsmetode. |
completed | Ja | Betalingen var vellykket. Du kan fullføre ordren. |
cancelled | Ja | Ordren ble avbrutt, enten av kunden eller via API-et. |
expired | Ja | Ordren utløp før en vellykket betaling ble gjennomført. Standard utløpsperiode er 30 minutter. |
Kun statuser merket med Endelig = Ja er terminale. Ordrer med status new, processing eller error kan fortsatt gå over til completed.
Eksempel: Ordre under behandling
Når en kunde har startet betaling, men den ennå ikke er fullført:
{
"id": "b9ae6...",
"project_id": "proj_abc123",
"merchant_order_id": "my-order-id-1",
"created": "2024-01-01T12:00:00.000000+00:00",
"modified": "2024-01-01T12:01:30.000000+00:00",
"completed": null,
"expiration_period": "PT30M",
"status": "processing",
"currency": "EUR",
"amount": 1295,
"description": "My amazing order",
"return_url": "https://www.example.com",
"payment_url": "https://pay.costplus.com/...",
"webhook_url": "https://www.example.com/webhook",
"transactions": [
{
"id": "txn_001...",
"payment_method": "credit-card",
"payment_method_brand": "visa",
"status": "processing",
"amount": 1295,
"currency": "EUR"
}
],
"flags": ["is-test"]
}Eksempel: Fullført ordre
Når betalingen er vellykket, når ordren statusen completed:
{
"id": "b9ae6...",
"project_id": "proj_abc123",
"merchant_order_id": "my-order-id-1",
"created": "2024-01-01T12:00:00.000000+00:00",
"modified": "2024-01-01T12:02:15.000000+00:00",
"completed": "2024-01-01T12:02:15.000000+00:00",
"expiration_period": "PT30M",
"status": "completed",
"currency": "EUR",
"amount": 1295,
"description": "My amazing order",
"return_url": "https://www.example.com",
"payment_url": "https://pay.costplus.com/...",
"webhook_url": "https://www.example.com/webhook",
"transactions": [
{
"id": "txn_001...",
"payment_method": "credit-card",
"payment_method_brand": "visa",
"payment_method_details": {
"card_last_four": "4242",
"card_expiry_month": 12,
"card_expiry_year": 2026,
"card_holder_name": "J. Smith"
},
"status": "completed",
"amount": 1295,
"currency": "EUR"
}
],
"flags": ["is-test"]
}Transaksjonsdetaljer
Hver transaksjon i en ordre inneholder følgende nøkkelfelt:
| Felt | Beskrivelse |
|---|---|
payment_method | Betalingsmetoden som ble brukt (f.eks. credit-card, ideal, apple-pay) |
payment_method_brand | Merket eller utstederen (f.eks. visa, mastercard, amex) |
payment_method_details | Et objekt med metodespesifikke detaljer som kortets fire siste siffer, utløpsdato og kortholders navn |
status | Statusen for denne spesifikke transaksjonen |
amount | Transaksjonsbeløpet i øre/cent |
currency | Transaksjonsvalutaen |
Ikke stol utelukkende på at kunden videresendes til din return_url som bekreftelse på betaling. Verifiser alltid ordrestatusen via API-et eller gjennom en webhook før du fullfører en ordre.
Relaterte endepunkter
- Hent ordre — hent det fullstendige ordreobjektet og gjeldende status
- List ordrer — list ordrer med datofiltrering