LpCallbackService link
LP-implemented endpoint t-0 calls to request the LP’s durable decision on a
standing quote execution for one authorized sale. Fiat mode only.
| Method Name | Request Type | Response Type | Description |
|---|
| ExecuteQuote | ExecuteQuoteRequest | ExecuteQuoteResponse | Requests a durable Accepted or Rejected result; only Accepted creates the LP’s firm per-sale obligation. |
LpService link
t-0 endpoints the LP calls to push and withdraw standing quotes and to report
its self-initiated fiat settlements. Fiat mode only.
Requests And Response Types link
ExecuteQuoteRequest link
| Field | Type | Label | Description |
|---|
| execution_id | uint64 | | t-0’s id for this execution command; idempotency key and, after Accepted, the LP’s obligation handle. |
| quote_id | uint64 | | t-0’s id for the standing quote this execution is under. |
| quote_ref | string | | LP’s own identifier for that quote — a non-authoritative correlation echo. Lets the LP attribute the execution even when it arrives before the LP has recorded t-0’s quote_id (publish-vs-execute race). |
| acquirer_id | uint64 | | t-0’s stable id for the Acquirer whose local-fiat obligation is being executed. |
| local_amount | Decimal | | Fiat amount owed to the Acquirer for this sale, in the standing quote’s currency. |
| amount_usdt | Decimal | | USDt the LP receives at settlement for this sale. |
| executed_at | google.protobuf.Timestamp | | Moment t-0 created this durable execution command at authorization. |
ExecuteQuoteResponse link
The LP’s durable decision on one ExecuteQuote command.
ExecuteQuoteResponse.Accepted link
Acceptance creates the LP’s firm per-sale obligation.
This message has no fields defined.
ExecuteQuoteResponse.Rejected link
Rejection leaves the payment intent authorized for manual handling.
FiatSettlementSentRequest link
| Field | Type | Label | Description |
|---|
| bank_transfer_ref | string | | Reference on the bank-rails transfer; idempotency key, unique per LP. |
| settled_execution_ids | uint64 | repeated | Accepted executions this settlement clears, treated as a set (duplicates collapse, order is not significant). |
| local_currency | string | | ISO 4217 currency delivered; matches the covered executions’ currency. |
| settlement_amount | Decimal | | Local-fiat amount delivered; must equal the sum of the covered executions’ local amounts. |
| settled_at | google.protobuf.Timestamp | | Moment the LP released the bank-rails transfer. |
FiatSettlementSentResponse link
FiatSettlementSentResponse.Accepted link
This message has no fields defined.
FiatSettlementSentResponse.Rejected link
PublishQuoteRequest link
| Field | Type | Label | Description |
|---|
| quotes | PublishQuoteRequest.Quote | repeated | Standing quotes to publish in one call, at most one per currency, each under its own quoteRef. The batch is atomic: one invalid quote declines the whole call and consumes no quoteRef. |
PublishQuoteRequest.Quote link
| Field | Type | Label | Description |
|---|
| quote_ref | string | | LP’s identifier for this quote; idempotency key, unique per LP. |
| local_currency | string | | ISO 4217 currency the quote prices (e.g. COP). |
| fx_rate | Decimal | | Published rate, in units of local_currency per 1 USDt. |
| expires_at | google.protobuf.Timestamp | | Moment the quote stops standing, on t-0’s clock. Validity bounds are a business decline (VALIDITY_INVALID), not request validation. |
PublishQuoteResponse link
PublishQuoteResponse.Failure link
PublishQuoteResponse.Success link
PublishQuoteResponse.Success.PublishedQuote link
| Field | Type | Label | Description |
|---|
| quote_ref | string | | Echo of the quote’s quoteRef. |
| quote_id | uint64 | | t-0’s id for the standing quote, used everywhere downstream. |
WithdrawQuoteRequest link
| Field | Type | Label | Description |
|---|
| quote_id | uint64 | | The standing quote to withdraw; must have been minted for this LP. |
WithdrawQuoteResponse link
WithdrawQuoteResponse.Failure link
WithdrawQuoteResponse.Success link
This message has no fields defined.
ExecuteQuoteResponse.Rejected.Reason link
| Name | Number | Description |
|---|
| REASON_UNSPECIFIED | 0 | |
| REASON_OTHER | 10 | The LP declines for a business reason not otherwise classified; t-0 persists details and routes the authorized payment to manual handling. |
FiatSettlementSentResponse.Rejected.Reason link
| Name | Number | Description |
|---|
| REASON_UNSPECIFIED | 0 | |
| REASON_EXECUTION_UNKNOWN | 10 | A listed execution was never created for this LP or has a durable Rejected result; do not settle it. |
| REASON_EXECUTION_ALREADY_COVERED | 20 | A listed execution is already covered by an accepted settlement. |
| REASON_CURRENCY_MISMATCH | 30 | local_currency does not match the covered executions’ currency. |
| REASON_AMOUNT_MISMATCH | 40 | settlement_amount does not equal the covered executions’ sum. |
| REASON_ACQUIRER_MIXED | 60 | The covered executions span more than one Acquirer (one transfer credits one account). |
| REASON_BANK_TRANSFER_REF_CONFLICT | 70 | bank_transfer_ref is already settled with different content; a genuinely different money movement is reported under a different reference. |
PublishQuoteResponse.Failure.Reason link
| Name | Number | Description |
|---|
| REASON_UNSPECIFIED | 0 | |
| REASON_VALIDITY_INVALID | 30 | A quote’s expires_at is in the past, too short to be usable, or beyond the max window; the whole batch is declined. |
WithdrawQuoteResponse.Failure.Reason link
| Name | Number | Description |
|---|
| REASON_UNSPECIFIED | 0 | |
| REASON_QUOTE_UNKNOWN | 10 | quote_id is unknown or belongs to another LP. |