Skip to content

[READY] Integrate Alfredpay: Mexico 🇲🇽 + Colombia 🇨🇴#1105

Open
Sharqiewicz wants to merge 23 commits intostagingfrom
feat/alfredpay-colombia
Open

[READY] Integrate Alfredpay: Mexico 🇲🇽 + Colombia 🇨🇴#1105
Sharqiewicz wants to merge 23 commits intostagingfrom
feat/alfredpay-colombia

Conversation

@Sharqiewicz
Copy link
Copy Markdown
Member

@Sharqiewicz Sharqiewicz commented Apr 1, 2026


Summary

Adds Colombia (COP) support to the Alfredpay onramp/offramp flow and implements the full KYB (Know Your Business) verification
path for all Alfredpay countries.

What's new

Colombia (COP) support

  • New ColKycFormScreen with Colombia-specific fields: typeDocumentCol (CC/CE enum), 10-digit DNI validation, required phone
    number
  • AlfredpayFiatAccountType.COELSA bank network for Colombian fiat accounts
  • Colombia routed through the same API form + document upload path as Mexico (not iFrame)
  • Backend extends alfredpayOnrampMint handler and alfredpay-to-evm transaction builder to support MXN and COP alongside USD

KYB (business) flow

  • KybFormScreen — business information form (name, tax ID, address, related persons)
  • KybBusinessDocsScreen — uploads articles of incorporation, proof of address, shareholder registry
  • KybPersonDocsScreen — paginates through related persons, uploads ID front/back per person
  • Backend: createBusinessCustomer, submitKybInformation, submitKybFile, submitKybRelatedPersonFile, sendKybSubmission
    endpoints
  • XState machine handles full KYB state graph including multi-person pagination

Fiat account registration

  • FiatAccountRegistration feature: account card deck, add/remove bank accounts, KYC-required banner
  • useFiatAccounts hook wrapping list/add/delete API calls

Shared package

  • alfredpayApiService.ts — full HTTP client for Alfredpay's /penny/ API (quotes, onramp, offramp, KYC, KYB, fiat accounts)
  • types.ts — all enums and request/response interfaces (AlfredPayCountry, AlfredpayColombiaDocumentType,
    AlfredpayFiatAccountType, etc.)
  • alfredpay.endpoints.ts — typed request/response contracts for the Vortex API layer

Fixes

  • Wrap Buffer in Uint8Array for File constructor (Express v5 BlobPart compatibility)
  • Cast req.params to typed object (ParamsDictionary now string | string[] in Express v5)
  • Use z.nativeEnum for Colombia document type instead of z.enum string literals
  • Rebuild shared dist to expose evm/squidrouter exports

Test plan

  • USD individual: complete iFrame KYC flow, confirm ramp proceeds after Success status
  • MXN individual: submit KYC form + front/back ID upload, poll to Success
  • COP individual: submit KYC form with typeDocumentCol=CC, 10-digit DNI, phone number; upload docs
  • KYB (MXN/COP): fill business form → upload 3 business docs → upload per-person IDs → poll to Success
  • Fiat account registration: add, list, and delete a bank account for MXN and COP
  • Confirm onramp proceeds: fiatPaymentInstructions returned to user, USDC lands on ephemeral address, bridge executes
  • Retry flow: KYC failure resets form for MXN/COP; returns new link for USD/KYB
  • TypeScript: bun typecheck passes; bun lint:fix clean

@netlify
Copy link
Copy Markdown

netlify bot commented Apr 1, 2026

Deploy Preview for vortexfi ready!

Name Link
🔨 Latest commit 2ff9a8e
🔍 Latest deploy log https://app.netlify.com/projects/vortexfi/deploys/69e22a667fadea0007f9a30c
😎 Deploy Preview https://deploy-preview-1105--vortexfi.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@netlify
Copy link
Copy Markdown

netlify bot commented Apr 1, 2026

Deploy Preview for vortex-sandbox ready!

Name Link
🔨 Latest commit 2ff9a8e
🔍 Latest deploy log https://app.netlify.com/projects/vortex-sandbox/deploys/69e22a66e67fa90008305f3c
😎 Deploy Preview https://deploy-preview-1105--vortex-sandbox.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@Sharqiewicz Sharqiewicz changed the title [In Progress] Alfredpay Colombia [In Progress] Integrate Alfredpay: Mexico 🇲🇽 + Colombia 🇨🇴 Apr 9, 2026
@Sharqiewicz Sharqiewicz changed the title [In Progress] Integrate Alfredpay: Mexico 🇲🇽 + Colombia 🇨🇴 [READY] Integrate Alfredpay: Mexico 🇲🇽 + Colombia 🇨🇴 Apr 17, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant