Build on Payblis
- 1 Create a merchant account (sandbox + live API keys).
- 2 Set your USDC Polygon wallet in Settings β Crypto Wallet.
-
3
POST /api/sandbox/payment/createβ opencheckout_url. -
4
POST /api/sandbox/payment/{RefOrder}/completeto simulate success.
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).
Payment webhook fields
| Field | Type | Description |
|---|---|---|
event | string | e.g. payment.completed |
RefOrder | string | Your order reference |
amount | number | Fiat amount |
status | string | Payment status |
environment | string | sandbox / live |
signature | string | HMAC hex |
settlement.completed fields
| Field | Type | Description |
|---|---|---|
event | string | settlement.completed |
RefOrder | string | Linked payment order |
amount_crypto | number | Net crypto amount credited to your wallet |
crypto_currency | string | e.g. USDC |
wallet_address | string | Destination payout wallet |
network | string | polygon |
sent_at | string | Webhook send time (ISO 8601 UTC) |
signature | string | HMAC hex |
Base URL
https://payblis.com
Local: http://localhost:8888/payblis_app Β· Paths: /api/sandbox/β¦ or /api/β¦
Payments
Returns RefOrder + checkout_url. Sandbox: /api/sandbox/payment/create.
Body
| Field | Type | Description |
|---|---|---|
amount | number | Fiat amount (> 0) |
currency | string | EUR, USD, CAD |
product_name | string | Product label |
method | string | e.g. credit_cards |
RefOrder | string | Unique order reference |
Customer_Email | string | Buyer email |
Customer_Name | string | First name |
Customer_LastName | string | Last name |
country | string | ISO country |
store_name | string | Store name |
urlOK | url | Success redirect |
urlKO | url | Failure redirect |
ipnURL | url | Webhook URL |
RefOrder, amount, status, environment, timestamps.
RefOrder + status.
Cancel a non-terminal payment. Requires HMAC headers.
Query
| Field | Type | Description |
|---|---|---|
page | integer | Default 1 |
per_page | integer | Default 20, max 100 |
status | string | Optional filter |
q | string | Search RefOrder / email |
Balance
Pending / in-settlement / paid-out.
Sandbox tools
Mark sandbox payment completed. HMAC required.
Mark sandbox payment failed. HMAC required.
Send webhook.test to your URL. Body: optional url, event.