customers. Internally you may see them called customers.
Two ways to attribute an incoming payment
This is the first decision to make, and it has a cost attached.A virtual IBAN per customer
Provision each customer their own IBAN. Anything arriving at it is attributed to that customer
automatically — no reference needed, nothing for the payer to get wrong.
A shared IBAN plus a reference
Customers pay into your account and quote a reference you generated. You call the deposit
endpoint first to mint that reference, then reconcile on it.
Create a customer
partnerCustomerIdentifier is your identifier for this person. Pass the primary key you already
use and every StableMint record stays joinable to your own database. StableMint returns its own
guid, which is what the rest of the API takes.
Send only what you are asked for. Every additional identity field you pass is personal data
StableMint then holds on your behalf, and it widens your obligations under GDPR without widening
what the platform can do for you.
Provision a virtual IBAN
iban and country, plus an
ibans array — a customer may end up with more than one IBAN, in different countries, all feeding
the same underlying balance.
Create a reference-based deposit
For customers without their own IBAN. You tell StableMint a payment is expected; it returns the reference and the account to pay into.fundingInstructions and publicReference to your customer verbatim. A payment that arrives
without the reference, or after expiresAt, has nothing to match against and needs manual
reconciliation.
Always send an idempotencyKey — a retried call with the same key returns the original deposit
instead of creating a second one.
Customer balances are not spendable balances
There is no per-customer balance endpoint. To reconstruct one customer’s position, list their transactions and sum them yourself — see below. For a straightforward pass-through model — money in, money out, nothing else — net deposits and the spendable balance are the same number, and you can use it directly. Confirm that describes your product before you rely on it.Listing a customer’s transactions
Use the transactions endpoint with a filter rather than a customer-scoped path:partnerCustomerGuid: