API Docs

Base URL

Production
https://stixbnk.com

Authenticated requests: header X-API-Key: YOUR_API_KEY

Open banking routing + invoicing & payment links. Hosted checkout is always returned as checkout_url.

Collections

POST /api/v1/payments/merchant/requests Auth

Returns payment_request_id + checkout_url. Creditor IBAN is platform-managed.

Required (body)

FieldTypeDescription
amountnumberMajor units, > 0
currencystringEUR or GBP
marketstringISO country for OB routing (e.g. FR). GBP requires GB
referencestringGlobally unique business reference
product_namestringLine item label (max 255). Or product.product_name

Optional (body)

FieldTypeDescription
sandboxbooleantrue = local simulator; false/omit = live providers
descriptionstringHuman-readable description
localestringProvider locale (e.g. fr_FR)
languagestringShort code (en, fr)
customer_emailstringPayer email
customer_first_namestringPayer first name
customer_lastnamestringPayer last name
store_namestringStore / brand label
success_urlurlAbsolute success redirect (alias urlok)
failure_urlurlAbsolute failure redirect (alias urlko)

Invoices

GET /api/v1/invoices Auth

Optional (query)

FieldTypeDescription
statusstringFilter: draft, sent, paid, void, overdue, expired
POST /api/v1/invoices Auth

Required (body)

FieldTypeDescription
customerobjectname, email required
line_itemsarray[{description, quantity, unit_amount, tax_rate_percent}]

Optional (body)

FieldTypeDescription
currencystringDefault EUR
marketstringDefault FR
due_atstringDue date
notesstringFree text
sandboxbooleanSame semantics as collection
issuebooleanCreate payment link immediately (alias send)
GET /api/v1/invoices/item.php Auth

Required (query)

FieldTypeDescription
idintegerInvoice id

Optional

None

POST /api/v1/invoices/item.php Auth

Required (query)

FieldTypeDescription
idintegerInvoice id

Required (body)

FieldTypeDescription
actionstringupdate, send, issue, email, or void

Optional

Extra fields for action=update (customer, line_items, meta)

Webhooks

POST your endpoint Outbound

Configure in Merchant → Webhooks. Event open_banking.collection.updated. Header X-Webhook-Signature = hex HMAC-SHA256 of the raw body.

Envelope

FieldTypeDescription
idstringEvent id
typestringopen_banking.collection.updated
createdintegerUnix timestamp
dataobjectIncludes payment_request_id, reference, amount, currency, collection_status, sandbox, …