---
title: "Pay boletos and Brazilian bills with payables"
description: "Register boletos, arrecadacao slips, and PIX codes as payables and settle them from stablecoins through the quote-and-execute flow."
date: "2026-08-26"
category: "integrations"
products: ["payouts", "quotes", "webhooks"]
---

Paste this prompt into your coding agent to build bill payment for Brazil: your users hold stablecoins, BlindPay pays their boletos.

## Prompt

```text
You are integrating BlindPay payables into my application: registering Brazilian bills (boleto, arrecadacao, or PIX code) and paying them from stablecoins.

Before writing code, read these sources and follow them over any prior knowledge:
- https://blindpay.com/docs/llms.txt (read the payables, payout quotes, payouts, and webhooks pages)
- The OpenAPI spec: curl https://api.blindpay.com/doc

Build the flow:
1. Prerequisites: an approved customer (KYC/KYB) and a funded wallet, managed or external. Reuse my existing onboarding if present.
2. Register the bill: POST /v1/instances/{instance_id}/payables with the boleto digitable line, arrecadacao code, or PIX code. Persist the returned pb_ ID and surface the parsed bill details (amount, due date, beneficiary) back to the user for confirmation before paying.
3. Quote against the payable: POST /v1/instances/{instance_id}/quotes with payable_id instead of bank_account_id, plus network and token. Execute with POST /v1/instances/{instance_id}/payouts/evm before the quote's expires_at.
4. Track settlement through payout.new, payout.update, and payout.complete webhooks with Svix signature verification, keyed back to my bill record via the pb_ and po_ IDs.
5. Handle the failure paths explicitly: expired or already-paid boletos, amounts outside the per-currency limits, and quote expiry (re-quote and re-confirm with the user when the rate moved).

Constraints:
- Amounts are integers in minor units; API keys stay server-side.
- Validate the digitable line format client-side before calling the API so users get instant feedback on typos.
- Test on a development instance first; use the sentinel amounts ($666.00 forces failed, $777.00 forces refunded) to prove the failure handling.

Deliverables: payable registration service with bill-detail confirmation step, the quote-and-pay path, webhook handlers, and an integration test that registers and pays a test payable on the development instance.
```

## How to use

1. Paste the prompt with your stack details and instance ID.
2. Decide where bill confirmation happens in your UX; the parsed payable details are what the user must approve.
3. Run the full flow on a development instance before touching production.

## Related docs

- [Payables](https://blindpay.com/docs/payables)
- [Payout quotes](https://blindpay.com/docs/payout-quotes)
- [Webhooks](https://blindpay.com/docs/learn/webhooks)
