Overview
Billease Deals is a curated product catalog inside the Billease app and on the Billease Deals website. You list your products at cash price, customers check out and pay in installments, and you fulfill and deliver the order.
These pages are for Deals partners. If you are integrating standard checkout, where the customer starts on your site and you send them to the Billease checkout page, see Custom API instead.
What you build
Two things, and they are deliberately independent.
| What it is | Who hosts it | Who calls it | |
|---|---|---|---|
| Product sync | Keeping your catalog in step with the Deals catalog | Billease | You |
| Transactions | Accepting purchases and reporting delivery progress | You and Billease | Both |
Product sync is a standalone API of its own: Deals Products API. You push catalog changes to it whenever your products change. It has nothing to do with transactions and can be built and tested on its own.
Transactions ride on the APIs merchants already use. There is no separate Deals transaction API:
- We create the transaction by calling
POST /trx/transactionon your callback API, Merchant Callback API. - You report delivery progress with
delivery_statusonPOST /trx/{id}/update, Billease Transaction API.
So if you have integrated Billease before, most of the transaction side is already familiar: same base URLs, same tokens and the same transaction-update endpoint.
The three flows
1. Product sync: you call us
You call POST /products/sync whenever a product is created, changed, archived or brought back.
There is no scheduled pull; catalog data moves only when you push it.
New products and most edits are created as a pending version and go live once we approve them. Stock-count changes, archives and unarchives apply instantly.
2. Create transaction: we call you
When a customer buys one of your Deals products, we call POST /trx/transaction on your callback
API with the product, the amount and the delivery address. You create the order and return your
remaining stock, which we write straight back into the catalog.
Your 200 is the confirmation. We approve the transaction and disburse only after it.
3. Delivery status: you call us
As the order progresses you call POST /trx/{id}/update with a delivery_status, and we keep the
customer updated in the app.
Before go-live
Give us:
- the base URL of your callback API (for example
https://api.your-company.com), - the credential for one of the supported authentication schemes (JWT, API key or Basic).
We give you:
- a
shop_codeandmer_code(UUIDs) identifying your shop and merchant account, you send both on every product-sync call, - admin access to your Staging Merchants Portal, where you generate the static JWT you use to call us,
- a test client account and a dev build of the Billease Android app, so you can see your own products in the Deals catalog and run an end-to-end purchase yourself.
Once both sides have tested, we move you to production. You will be issued a new shop_code,
mer_code and JWT there; staging credentials do not carry over.
Naming conventions, image requirements and category guidance are covered in a separate document we send during onboarding. This section covers the API only.
Authentication
One static JWT covers both APIs you call: product sync and transaction updates. Generate it yourself in the Merchants Portal, and send it on every request:
Authorization: Bearer <your-token>
You can rotate it in the portal at any time.
For the callback API you host, you choose the scheme and give us the credential. See Security.
Rate limits
100 requests per second, per endpoint, on the APIs Billease hosts. On 429, back off and retry.