Cost+Docs

Guida Rapida

Accetta il tuo primo pagamento in 5 minuti

Questa guida ti accompagna nella creazione e nel completamento di un pagamento di test utilizzando l'API Cost+. Al termine, avrai un'integrazione funzionante su cui costruire.

Prerequisiti

  • Un account Cost+ con un sito web sandboxcreane uno nel Portale Commerciante
  • La tua chiave API sandbox (disponibile sotto Siti Web → il tuo sito web sandbox → Integrazione)

Non sai come ottenere la tua chiave API? Consulta Testare l'Integrazione per istruzioni dettagliate sulla configurazione.

Passaggio 1: Creare un Ordine

Invia una richiesta POST per creare un ordine di pagamento. Sostituisci YOUR_API_KEY con la tua chiave API sandbox:

Crea un ordine
curl -X POST https://api.costplus.online/v1/orders/ \
  -u YOUR_API_KEY: \
  -H "Content-Type: application/json" \
  -d '{
    "currency": "EUR",
    "amount": 1295,
    "merchant_order_id": "my-first-order",
    "description": "Test order",
    "return_url": "https://example.com/return",
    "webhook_url": "https://example.com/webhook",
    "transactions": [
      {
        "payment_method": "credit-card"
      }
    ]
  }'

L'amount è nell'unità valutaria più piccola (centesimi). 1295 significa 12,95 EUR.

L'API restituisce l'oggetto ordine completo. I campi chiave sono id, status e il payment_url all'interno della transazione:

Risposta
{
  "id": "4851e31c-4137-4e91-95ef-1df945ee76a2",
  "status": "new",
  "currency": "EUR",
  "amount": 1295,
  "merchant_order_id": "my-first-order",
  "description": "Test order",
  "return_url": "https://example.com/return",
  "webhook_url": "https://example.com/webhook",
  "created": "2026-01-15T12:00:05.433502+00:00",
  "modified": "2026-01-15T12:00:05.553125+00:00",
  "expiration_period": "PT1H",
  "transactions": [
    {
      "id": "d291f03f-a406-428a-967a-4895a46e03fd",
      "payment_method": "credit-card",
      "status": "new",
      "amount": 1295,
      "currency": "EUR",
      "payment_url": "https://pay.costplus.online/4851e31c.../credit-card/d291f03f...",
      "is_capturable": false,
      "expiration_period": "PT30M"
    }
  ]
}

Salva l'id — ti servirà nel Passaggio 3.

Passaggio 2: Completare il Pagamento di Test

  1. Apri il payment_url dalla risposta nel tuo browser
  2. Nella pagina di pagamento, inserisci i dati della carta di test:
CampoValore
Numero carta4111 1111 1111 1111
ScadenzaQualsiasi data futura (es. 12/28)
CVCQualsiasi 3 cifre (es. 123)
  1. Invia il pagamento
  2. Verrai reindirizzato al tuo return_url

Non fare affidamento solo sul reindirizzamento per confermare il pagamento. Il cliente potrebbe chiudere il browser prima di essere reindirizzato. Verifica sempre tramite l'API (Passaggio 3) o i webhook (Passaggio 4).

Passaggio 3: Verificare il Pagamento

Recupera l'ordine per confermare che è stato completato:

Controlla lo stato dell'ordine
curl -u YOUR_API_KEY: \
  https://api.costplus.online/v1/orders/4851e31c-4137-4e91-95ef-1df945ee76a2/

Un pagamento riuscito appare così:

Risposta (completato)
{
  "id": "4851e31c-4137-4e91-95ef-1df945ee76a2",
  "status": "completed",
  "currency": "EUR",
  "amount": 1295,
  "merchant_order_id": "my-first-order",
  "completed": "2026-01-15T12:02:30.123456+00:00",
  "transactions": [
    {
      "id": "d291f03f-a406-428a-967a-4895a46e03fd",
      "payment_method": "credit-card",
      "status": "completed",
      "amount": 1295,
      "currency": "EUR",
      "payment_method_details": {
        "truncated_pan": "1111",
        "card_expiry": "122028"
      }
    }
  ]
}

Lo status dell'ordine è "completed" — il pagamento è riuscito.

Passaggio 4: Gestire il Webhook (Consigliato)

Quando lo stato del pagamento cambia, Cost+ invia una richiesta POST al tuo webhook_url:

Payload del webhook
{
  "event": "status_changed",
  "order_id": "4851e31c-4137-4e91-95ef-1df945ee76a2"
}

Quando lo ricevi:

  1. Chiama GET /v1/orders/{order_id}/ per verificare lo stato attuale (non fidarti mai solo del payload del webhook)
  2. Restituisci HTTP 200 per confermare la ricezione
  3. Evadi l'ordine se lo stato è "completed"

Per lo sviluppo locale, usa un tunnel come ngrok per esporre il tuo server locale e ricevere i webhook.

Consulta la guida Webhook per la logica di retry, le best practice e i dettagli del payload.

Se non hai bisogno della logica di reindirizzamento lato server, i link di pagamento offrono un percorso più semplice. Crea un link, condividi l'URL con il tuo cliente e controlla lo stato successivamente.

Crea un link di pagamento
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": 2500,
    "currency": "EUR",
    "description": "Invoice #1234"
  }'

La risposta include un payment_url che puoi condividere via email, SMS o chat. Il cliente può tentare il pagamento più volte (fino a 25) finché il link non scade o il pagamento non riesce.

Consulta la guida Link di Pagamento per il flusso completo.

Prossimi Passi

Hai completato il tuo primo pagamento. Ecco dove proseguire:

Endpoint Correlati

On this page