slikair
Back to Developer Zone

10 min

Your first payment

Create a payment in sandbox, follow the redirect, read the status back and confirm the result from the webhook.

Create the payment

POST to /payment/create on the API base URL with your merchant-token and a fresh Idempotency-Key. One call covers cards, APMs, open banking and crypto. The payment_method field switches the flow.

cURL
curl -X POST https://devsilo.xyz/api/v2/payment/create \
  -H "merchant-token: $SLIKAIR_MERCHANT_TOKEN" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{ "merchant_id": "...", "merchant_site_id": "1234", "payment_method": "credit_card", "amount": 99.99, "currency": "EUR", "country": "NLD", "request_id": "order-1001", "notification_link": "https://example.com/webhook" }'

What the request needs

  • Account: merchant_id, merchant_site_id.
  • Order: amount, currency, country, request_id.
  • Method: payment_method, plus any method-specific fields.
  • Consumer: email, first_name, last_name, device_ip.
  • Callbacks: notification_link, success_url, pending_url, fail_url, back_url.

Follow the redirect

Most methods return a redirect target and status 100 (Pending redirect). Send the consumer there and let them finish on the provider side; they come back to your success, pending or fail URL. Never treat the landing URL as proof of payment.

Read the status

Call /payment/get-status with the same request_id to inspect the current state. Use it as a fallback or for reconciliation, not as your primary signal, polling is slower and rate-limited compared to the notification.

Confirm from the webhook

The pay-in notification delivered to your notification_link is the source of truth. Release goods or credit the account only after it arrives with status 200 (Success).

Run your first create call against sandbox in a few minutes.

CREATE A SANDBOX ACCOUNT