πŸ‡¬πŸ‡§ EN β†’ Login

Build on Payblis

  1. 1 Create a merchant account (sandbox + live API keys).
  2. 2 Set your USDC Polygon wallet in Settings β†’ Crypto Wallet.
  3. 3 POST /api/sandbox/payment/create β†’ open checkout_url.
  4. 4 POST /api/sandbox/payment/{RefOrder}/complete to simulate success.

Open the API Console β†’

Authentication

X-API-Key: YOUR_API_KEY

Sandbox key β†’ /api/sandbox/… Β· Live key β†’ /api/…. Do not pass ?environment=.

All POST requests also need the secret key (sk_…):

X-Payblis-Timestamp: <unix seconds>
X-Payblis-Signature: <hmac-sha256 hex of "timestamp.body">
X-Payblis-Nonce: <unique per request>

Empty body β†’ sign timestamp + '.'. In the console, set API key + secret under Environment (auto-signed on Send).

Webhooks

Payblis POSTs JSON to ipnURL (or your default webhook URL). Verify with HMAC-SHA256 of the body without the signature field.

X-Payblis-Signature: <hex hmac-sha256>

Payment events: payment.created, payment.completed, payment.failed, payment.cancelled, payment.expired. Payment payloads do not include crypto_currency or network.

After a successful live PayGate settlement, you also receive settlement.completed (crypto amount received, currency, destination wallet, send time).

POST your endpoint Outbound

Payment webhook fields

FieldTypeDescription
eventstringe.g. payment.completed
RefOrderstringYour order reference
amountnumberFiat amount
statusstringPayment status
environmentstringsandbox / live
signaturestringHMAC hex

settlement.completed fields

FieldTypeDescription
eventstringsettlement.completed
RefOrderstringLinked payment order
amount_cryptonumberNet crypto amount credited to your wallet
crypto_currencystringe.g. USDC
wallet_addressstringDestination payout wallet
networkstringpolygon
sent_atstringWebhook send time (ISO 8601 UTC)
signaturestringHMAC hex

Base URL

Production
https://payblis.com

Local: http://localhost:8888/payblis_app Β· Paths: /api/sandbox/… or /api/…

Payments

POST /api/payment/create Auth

Returns RefOrder + checkout_url. Sandbox: /api/sandbox/payment/create.

Body

FieldTypeDescription
amountnumberFiat amount (> 0)
currencystringEUR, USD, CAD
product_namestringProduct label
methodstringe.g. credit_cards
RefOrderstringUnique order reference
Customer_EmailstringBuyer email
Customer_NamestringFirst name
Customer_LastNamestringLast name
countrystringISO country
store_namestringStore name
urlOKurlSuccess redirect
urlKOurlFailure redirect
ipnURLurlWebhook URL
GET /api/payment/{RefOrder} Auth

RefOrder, amount, status, environment, timestamps.

GET /api/payment/{RefOrder}/status Auth

RefOrder + status.

POST /api/payment/{RefOrder}/cancel Auth

Cancel a non-terminal payment. Requires HMAC headers.

GET /api/transactions Auth

Query

FieldTypeDescription
pageintegerDefault 1
per_pageintegerDefault 20, max 100
statusstringOptional filter
qstringSearch RefOrder / email

Balance

GET /api/balance Auth

Pending / in-settlement / paid-out.

Sandbox tools

POST /api/sandbox/payment/{RefOrder}/complete Auth

Mark sandbox payment completed. HMAC required.

POST /api/sandbox/payment/{RefOrder}/fail Auth

Mark sandbox payment failed. HMAC required.

POST /api/webhook/test Auth

Send webhook.test to your URL. Body: optional url, event.