Europe API Reference (Merchant Server)
All endpoints use HMAC authentication on https://api.transacty.ai.
Open Banking endpoints
| Method | Path | Scope | Purpose |
|---|---|---|---|
POST | /v1/eur/payin-instances | payin:create | Create a EUR/GBP pay-in |
GET | /v1/eur/payin-instances/:transactionId | payin:create | Get pay-in status |
POST | /v1/eur/payout-instances | payout:create | Create a EUR payout (from USDC) |
POST | /v1/eur/payout-instances/:transactionId/approve | payout:create | Approve a payout when required |
GET | /v1/eur/payout-instances/:transactionId | payout:create | Get payout status |
Shared read endpoints
| Method | Path | Notes |
|---|---|---|
GET | /v1/transactions | Filter type=payin|payout; includes rail, railLabel, currency |
GET | /v1/transactions/:transactionId | Status poll; same rail fields |
GET | /v1/balance | Wallet pocket + pendingBalance for the currency |
PATCH | /v1/me/webhook | Register the URL for Transacty → merchant events |
Settlement
- Pay-ins settle to your USDC wallet (upstream
eventDetails.eventId5). - Payouts debit USDC and disburse EUR to the beneficiary bank.
- USDC is a separate wallet pocket from USDT and BDT. On
GET /v1/balance,availableBalanceis spendable andpendingBalanceis in-flight pay-ins for that currency. - The Europe market must be enabled (KYB approved) or
/v1/eur/*returns403(market_not_enabled); the USDC pocket is provisioned on approval. - Legacy alias
/v1/tylt/eur/...maps to the same handlers.
Europe vs India (quick contrast)
| Europe | India UPI | |
|---|---|---|
| Pay-in success signal | eventDetails.eventId = 5 | trade event 4 or 6 |
| Dispute | TL Pay / support runbooks | trade event 5 |
| Settlement wallet | USDC | USDT |
| Checkout | Redirect to checkoutUrl | Merchant-built UPI UI |
Webhook events
When configured, Transacty sends payin.completed and payin.failed. The same
webhook URL serves all rails. See Webhooks.
Last updated on