Conversation
The finalSettlementSubsidy handler stored the tx hash in ramp state but never wrote a Subsidy row, so settlement top-ups were invisible to subsidy accounting. Record the confirmed transfer via createSubsidy like the other subsidy handlers. The DB enum also lacked USDT (this corridor's settlement token) and ETH (already used by the BRL gas subsidy in squidRouterPay, whose inserts failed silently), so migration 036 adds both. The MXN cross-chain corridor test now asserts the persisted row.
getRampFlow returned null for SELL ramps whose output is not BRL/EURC, so the status-polling effect never ran for Alfredpay offramps (USD/MXN/COP/ARS) and the UI stayed on the progress screen forever. Add the Alfredpay offramp phase sequence to PHASE_FLOWS (matching the backend handlers: initial -> squidRouterPermitExecute -> fundEphemeral -> finalSettlementSubsidy -> alfredpayOfframpTransfer -> complete) and return it for Alfredpay fiat tokens, so polling runs and completion is detected. Extend the USD offramp E2E journey past the former KNOWN GAP: the status polls now serve the SELL fields and the spec asserts the success screen.
finalSettlementSubsidy records the assetSymbol returned by the dynamic SquidRouter registry (1,695 live symbols outside the enum on supported BUY networks, e.g. WETH, USDC.e — the latter even in the static config) plus per-network natives (BNB, AVAX). Since createSubsidy deliberately swallows insert errors, any such symbol meant the subsidy was paid on-chain but never recorded — the same failure mode migration 036 already patched piecemeal for ETH. Migration 037 makes the column VARCHAR(32) permanently, and the swallowed-error path now logs an alertable SUBSIDY_RECORDING_FAILED line with ramp, phase, token, amount, and tx hash.
Round-trips USDC.e, WETH, BNB, and AVAX through the subsidies table and through BasePhaseHandler.createSubsidy itself, so a reintroduced enum constraint fails loudly instead of silently dropping bookkeeping rows.
ARRIVAL_TEXT_BY_TOKEN looked up pages.success.arrivalText.sell.COP, but en.json/pt.json had no COP entry. Since i18next returns the raw key (a truthy string) for missing keys, the || default fallback never fired and a COP SELL success page rendered the literal key. The parameterized Alfredpay offramp journeys now assert the arrival text for all four currencies instead of skipping COP.
ONRAMP_DETAILS_BY_FIAT mapped FiatToken.ARS to null while the fully implemented ARSOnrampDetails component (COELSA CVU, alias, reference from achPaymentData) sat unimported in the same directory, so an ARS BUY showed no bank-transfer instructions after registration. The ARS E2E journey now asserts the CVU, alias, and reference are rendered instead of pinning the gap.
GET /v1/supported-payment-methods only listed sepa, pix, and cbu, so the live USD/MXN/COP corridors were never advertised. Limits mirror the hardcoded AlfredPay individual-customer fallback bounds. The http-surface test now pins the method ids per direction and that all six fiat tokens are reachable through at least one sell method.
…ovisioning Whitelabel the partner docs (no payment-partner names), add guide pages for the USD/MXN/COP/ARS corridors and user-linked API key minting via email OTP, and add the auth + api-keys endpoints plus the missing currency/rail enum values to the OpenAPI reference.
Merge the user API key provisioning into Authentication And API Keys, replace the BRL-only and bank-transfer-only pages with a single Fiat Corridors page covering BRL, USD/MXN/COP/ARS, and EUR, and fix the OpenAPI validity errors that block Apidog import (empty servers array, duplicate startRamp operationId, component response keys with spaces).
Lead the file with the openapi/info keys so format sniffers recognize it, restore ASCII-escaped output, and drop the only 3.1-style nullable type union. Document EUR SEPA buys and sells on the Fiat Corridors page and remove the stale not-implemented claims from the overview and AI agent pages.
Add test suite foundation
✅ Deploy Preview for vortex-sandbox ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
✅ Deploy Preview for vortexfi ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.