Betalingslenker
Opprett gjenbrukbare betalingslenker
Betalingslenker er gjenbrukbare URL-er som lar kunder betale for en ordre. I motsetning til standardordrer som utløper etter ett mislykket forsøk, støtter betalingslenker flere nye forsøk, noe som gjør dem ideelle for fakturaer, e-postbaserte betalinger og scenarioer der kunden kanskje ikke betaler umiddelbart.
Nøkkelegenskaper
- Gjenbrukbare: Kunder kan forsøke betaling opptil 25 ganger hvis tidligere forsøk mislykkes.
- Langtidslevende: Standard utløpstid er 30 dager (konfigurerbart via
expiration_period). - Delbare: Send lenken via e-post, SMS, chat, eller bygg den inn på nettstedet ditt.
Opprette en betalingslenke
Send en POST-forespørsel til /v1/paymentlinks/:
curl -X POST https://api.costplus.online/v1/paymentlinks/ \
-u YOUR_API_KEY: \
-H "Content-Type: application/json" \
-d '{
"merchant_order_id": "invoice-1234",
"amount": 995,
"currency": "EUR",
"description": "Invoice #1234"
}'Svaret inkluderer payment_url som du kan dele med kunden, og en unik id for sporing:
{
"id": "e6eecc6a-47c5-4948-bcc0-d8b73f5c55a1",
"merchant_order_id": "invoice-1234",
"amount": 995,
"currency": "EUR",
"description": "Invoice #1234",
"expiration_period": "P30D",
"payment_url": "https://pay.costplus.online/paymentlinks/e6eecc6a.../",
"status": "new",
"reason": "Payment Link was created, not yet visited",
"orders": {},
"created": "2026-01-15T12:00:00.000000Z"
}Lagre id — du bruker den til å sjekke betalingslenkestatusen senere.
Påkrevde felt
| Felt | Beskrivelse |
|---|---|
merchant_order_id | Din egen referanse-ID for betalingslenken |
amount | Beløp i øre/cent (f.eks. 9,95 EUR = 995) |
currency | ISO 4217-valutakode (f.eks. EUR, GBP) |
Valgfrie felt
| Felt | Beskrivelse |
|---|---|
description | Beskrivelse som vises til kunden |
expiration_period | ISO 8601-varighet. Standard er P30D (30 dager) |
return_url | URL for å videresende kunden etter vellykket betaling |
failure_url | URL for å videresende kunden ved avbrudd, utløp eller feil |
webhook_url | URL for å motta statusendringsvarsler |
customer | Kundedetaljer-objekt (navn, e-post, osv.) |
Hvis du oppgir både return_url og failure_url, videresendes kunder til failure_url når ordrestatusen er cancelled, expired eller error. Ellers går alle videresendinger til return_url.
Hente en betalingslenke
Send en GET-forespørsel til /v1/paymentlinks/{id}/ med betalingslenkens id fra opprettelsessvaret:
curl -u YOUR_API_KEY: \
https://api.costplus.online/v1/paymentlinks/e6eecc6a-47c5-4948-bcc0-d8b73f5c55a1/Svaret inkluderer gjeldende status og referanser til alle ordrer opprettet fra lenken, gruppert etter status:
{
"id": "e6eecc6a-47c5-4948-bcc0-d8b73f5c55a1",
"merchant_order_id": "invoice-1234",
"amount": 995,
"currency": "EUR",
"description": "Invoice #1234",
"expiration_period": "P30D",
"payment_url": "https://pay.costplus.online/paymentlinks/e6eecc6a.../",
"status": "completed",
"reason": "Completed",
"completed": "2026-01-15T12:05:30.123456+00:00",
"completed_order_id": "3bb663cc-2a20-400d-8bf6-18d9695d0c66",
"orders": {
"error": ["0d79014c-0aaa-4fd6-87c5-c8cfa5f5ac69"],
"completed": ["3bb663cc-2a20-400d-8bf6-18d9695d0c66"]
}
}I dette eksemplet gjorde kunden ett mislykket forsøk (ordre 0d79014c... med error-status) før det lyktes (ordre 3bb663cc... med completed-status). Du kan hente fullstendige detaljer for enhver ordre via GET /v1/orders/{order_id}/.
Betalingslenkestatuser
| Status | Beskrivelse |
|---|---|
new | Lenken er opprettet, men det er ikke gjort noe betalingsforsøk. |
processing | Et betalingsforsøk pågår. |
all_unsuccessful | Alle betalingsforsøk så langt har mislyktes. Kunden kan fortsatt forsøke på nytt (opptil 25 forsøk). |
completed | Betalingen var vellykket. Lenken er ikke lenger aktiv. |
expired | Lenken har utløpt før en vellykket betaling ble gjennomført. |
all_unsuccessful-statusen er ikke en endelig status. Kunden kan fortsatt forsøke å betale igjen til enten betalingen lykkes, maksimalt antall forsøk (25) er nådd, eller lenken utløper.
Når en betalingslenke når statusen completed eller expired, kan den ikke brukes igjen. Opprett en ny betalingslenke hvis kunden trenger å betale på nytt.
Eksempel på arbeidsflyt
- Opprett en betalingslenke via
POST /v1/paymentlinks/. - Del den returnerte
payment_urlmed kunden din (f.eks. via e-post, SMS eller faktura). - Kunden åpner lenken og gjennomfører betalingen.
- Cost+ sender en webhook til din
webhook_urlnår statusen endres. - Verifiser betalingslenkestatusen via
GET /v1/paymentlinks/{id}/. - Fullfør ordren når statusen er
completed.
Relaterte endepunkter
- Opprett betalingslenke — opprett en gjenbrukbar betalingslenke
- Hent betalingslenke — hent gjeldende status for en betalingslenke