# Create Transfer From Quote

## POST /v0/customers/{customer\_id}/offramp-transfer/quote/{quote\_id}

> Create Offramp Transfer from Quote

```json
{"openapi":"3.0.0","info":{"title":"Offramp API","version":"0"},"servers":[{"url":"https://api.alignlabs.dev","description":"Production server"},{"url":"https://api-sandbox.alignlabs.dev","description":"Sandbox server"}],"paths":{"/v0/customers/{customer_id}/offramp-transfer/quote/{quote_id}":{"post":{"summary":"Create Offramp Transfer from Quote","parameters":[{"name":"customer_id","in":"path","description":"The unique identifier of the customer","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"quote_id","in":"path","description":"The unique identifier of the quote","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"Api-Key","in":"header","description":"Your secret API key, available in the developer dashboard. Include this header on every request to authenticate your application.","required":true,"schema":{"type":"string"}},{"name":"Idempotency-Key","in":"header","description":"Unique key to prevent duplicate requests","required":true,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","description":"You can provide either a reference to an existing external account ID or the complete bank account details for the destination.","oneOf":[{"title":"Destination External Account ID","description":"Use this option when you have a pre-existing external account","properties":{"transfer_purpose":{"type":"string","description":"The purpose of the transfer","enum":["charity","commercial_investment","corporate_card","credit_card","dividend","family","financial_services","good_sold","goods_bought","government","insurance","intergroup_transfer","intra_group_dividends","information_technology","leasing","loan_charges","merchant_settlement","mobile_wallet","none","non_resident_transfer_between_accounts","pension","personal_expenses","prepaid_cards","professional","rental","resident_transfer_between_accounts","salaries","telecommunications","travel","utility_bill"]},"destination_external_account_id":{"type":"string","format":"uuid","description":"The ID of the external account to use as the destination"},"documents":{"type":"array","items":{"type":"object","properties":{"file_id":{"type":"string","minLength":1,"maxLength":512,"description":"The ID of the uploaded file. To upload file see: https://docs.alignlabs.dev/align-api/files/upload-file"},"description":{"type":"string","maxLength":512}},"required":["file_id"]}}},"required":["destination_external_account_id"]},{"title":"Destination Bank Account Details","description":"Use this option to provide complete bank account information","properties":{"transfer_purpose":{"type":"string","description":"The purpose of the transfer","enum":["charity","commercial_investment","corporate_card","credit_card","dividend","family","financial_services","good_sold","goods_bought","government","insurance","intergroup_transfer","intra_group_dividends","information_technology","leasing","loan_charges","merchant_settlement","mobile_wallet","none","non_resident_transfer_between_accounts","pension","personal_expenses","prepaid_cards","professional","rental","resident_transfer_between_accounts","salaries","telecommunications","travel","utility_bill"]},"destination_bank_account":{"type":"object","oneOf":[{"title":"IBAN Account Details","properties":{"bank_name":{"type":"string"},"account_holder_type":{"type":"string","enum":["individual","business"]},"account_holder_first_name":{"type":"string"},"account_holder_last_name":{"type":"string"},"account_holder_business_name":{"type":"string"},"account_holder_address":{"type":"object","properties":{"country":{"type":"string","description":"Two-letter ISO 3166-1 alpha-2 country code","minLength":2,"maxLength":2},"city":{"type":"string","minLength":1,"maxLength":128},"street_line_1":{"minLength":1,"type":"string","maxLength":255},"postal_code":{"minLength":1,"type":"string","maxLength":48}},"required":["country","city","street_line_1","postal_code"]},"account_type":{"type":"string","enum":["iban"]},"iban":{"type":"object","properties":{"bic":{"type":"string"},"iban_number":{"type":"string"}},"required":["bic","iban_number"]}},"required":["bank_name","account_holder_type","account_type","account_holder_address","iban"]},{"title":"US Account Details","properties":{"bank_name":{"type":"string"},"account_holder_type":{"type":"string","enum":["individual","business"]},"account_holder_first_name":{"type":"string"},"account_holder_last_name":{"type":"string"},"account_holder_business_name":{"type":"string"},"account_holder_address":{"type":"object","properties":{"country":{"type":"string","description":"Two-letter ISO 3166-1 alpha-2 country code","minLength":2,"maxLength":2},"city":{"type":"string","minLength":1,"maxLength":128},"street_line_1":{"minLength":1,"type":"string","maxLength":255},"postal_code":{"minLength":1,"type":"string","maxLength":48}},"required":["country","city","street_line_1","postal_code"]},"account_type":{"type":"string","enum":["us"]},"us":{"type":"object","properties":{"account_number":{"type":"string"},"routing_number":{"type":"string"}},"required":["account_number","routing_number"]}},"required":["bank_name","account_holder_type","account_type","account_holder_address","us"]},{"title":"International Wire Account Details","properties":{"bank_name":{"type":"string"},"account_holder_type":{"type":"string","enum":["individual","business"]},"account_holder_first_name":{"type":"string"},"account_holder_last_name":{"type":"string"},"account_holder_business_name":{"type":"string"},"account_holder_address":{"type":"object","properties":{"country":{"type":"string","description":"Two-letter ISO 3166-1 alpha-2 country code","minLength":2,"maxLength":2},"city":{"type":"string","minLength":1,"maxLength":128},"street_line_1":{"minLength":1,"type":"string","maxLength":255},"postal_code":{"minLength":1,"type":"string","maxLength":48}},"required":["country","city","street_line_1","postal_code"]},"account_type":{"type":"string","enum":["international_wire"]},"international_wire":{"type":"object","properties":{"account_number":{"type":"string"},"routing_number":{"type":"string"},"bic":{"type":"string"}},"required":["account_number","routing_number","bic"]}},"required":["id","created_at","bank_name","account_holder_type","account_holder_address","account_type","international_wire"]}]},"documents":{"type":"array","items":{"type":"object","properties":{"file_id":{"type":"string","minLength":1,"maxLength":512,"description":"The ID of the uploaded file. To upload file see: https://docs.alignlabs.dev/align-api/files/upload-file"},"description":{"type":"string","maxLength":512}},"required":["file_id"]}}},"required":["destination_bank_account"]}]}}}},"responses":{"201":{"description":"Offramp transfer created successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateOfframpResponseSuccessModel"}}}}}}}},"components":{"schemas":{"CreateOfframpResponseSuccessModel":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"The unique identifier for the offramp transfer"},"status":{"type":"string","description":"The current status of the offramp transfer","enum":["pending","processing","completed"]},"amount":{"type":"string","format":"decimal","pattern":"^[0-9]+(\\.[0-9]+)?$","description":"The destination amount of the offramp transfer as a numeric string."},"source_token":{"type":"string","description":"The currency to be deposited","enum":["usdc","usdt"]},"source_network":{"type":"string","description":"The blockchain network for the source token","enum":["polygon","ethereum","base","tron","arbitrum","solana"]},"destination_currency":{"type":"string","description":"The currency for the destination","enum":["usd","eur","aed"]},"destination_payment_rails":{"type":"string","description":"The rails type to be used for the bank transfer","enum":["ach","wire","sepa","swift","uaefts"]},"transfer_purpose":{"type":"string","description":"The purpose of the transfer","enum":["charity","commercial_investment","corporate_card","credit_card","dividend","family","financial_services","good_sold","goods_bought","government","insurance","intergroup_transfer","intra_group_dividends","information_technology","leasing","loan_charges","merchant_settlement","mobile_wallet","none","non_resident_transfer_between_accounts","pension","personal_expenses","prepaid_cards","professional","rental","resident_transfer_between_accounts","salaries","telecommunications","travel","utility_bill"]},"destination_bank_account":{"type":"object","oneOf":[{"title":"IBAN Account Details","properties":{"bank_name":{"type":"string"},"account_holder_type":{"type":"string","enum":["individual","business"]},"account_holder_first_name":{"type":"string"},"account_holder_last_name":{"type":"string"},"account_holder_business_name":{"type":"string"},"account_holder_address":{"type":"object","properties":{"country":{"type":"string","description":"Two-letter ISO 3166-1 alpha-2 country code","minLength":2,"maxLength":2},"city":{"type":"string","minLength":1,"maxLength":128},"street_line_1":{"minLength":1,"type":"string","maxLength":255},"postal_code":{"minLength":1,"type":"string","maxLength":48}},"required":["country","city","street_line_1","postal_code"]},"account_type":{"type":"string","enum":["iban"]},"iban":{"type":"object","properties":{"bic":{"type":"string"},"iban_number":{"type":"string"}}}},"required":["bank_name","account_holder_type","account_holder_address","account_type","iban"]},{"title":"US Account Details","properties":{"bank_name":{"type":"string"},"account_holder_type":{"type":"string","enum":["individual","business"]},"account_holder_first_name":{"type":"string"},"account_holder_last_name":{"type":"string"},"account_holder_business_name":{"type":"string"},"account_holder_address":{"type":"object","properties":{"country":{"type":"string","description":"Two-letter ISO 3166-1 alpha-2 country code","minLength":2,"maxLength":2},"city":{"type":"string","minLength":1,"maxLength":128},"street_line_1":{"minLength":1,"type":"string","maxLength":255},"postal_code":{"minLength":1,"type":"string","maxLength":48}},"required":["country","city","street_line_1","postal_code"]},"account_type":{"type":"string","enum":["us"]},"us":{"type":"object","properties":{"account_number":{"type":"string"},"routing_number":{"type":"string"}}}},"required":["bank_name","account_holder_type","account_holder_address","account_type","us"]},{"title":"International Wire Account Details","properties":{"bank_name":{"type":"string"},"account_holder_type":{"type":"string","enum":["individual","business"]},"account_holder_first_name":{"type":"string"},"account_holder_last_name":{"type":"string"},"account_holder_business_name":{"type":"string"},"account_holder_address":{"type":"object","properties":{"country":{"type":"string","description":"Two-letter ISO 3166-1 alpha-2 country code","minLength":2,"maxLength":2},"city":{"type":"string","minLength":1,"maxLength":128},"street_line_1":{"minLength":1,"type":"string","maxLength":255},"postal_code":{"minLength":1,"type":"string","maxLength":48}},"required":["country","city","street_line_1","postal_code"]},"account_type":{"type":"string","enum":["international_wire"]},"international_wire":{"type":"object","properties":{"account_number":{"type":"string"},"routing_number":{"type":"string"},"bic":{"type":"string"}},"required":["account_number","routing_number","bic"]}},"required":["id","created_at","bank_name","account_holder_type","account_holder_address","account_type","international_wire"]}]},"quote":{"type":"object","properties":{"deposit_network":{"type":"string","description":"The blockchain network for the deposit","enum":["polygon","ethereum","tron","base","arbitrum","solana"]},"deposit_token":{"type":"string","description":"The token used for the deposit","enum":["usdc","usdt","eurc"]},"deposit_blockchain_address":{"type":"string","description":"The blockchain address where the funds should be deposited"},"deposit_amount":{"type":"string","description":"The amount to be deposited"},"source_amount":{"type":"string","description":"The source amount for the transfer"},"destination_amount":{"type":"string","description":"The destination amount for the transfer"},"exchange_rate":{"type":"string","description":"The exchange rate used for the transfer","pattern":"^[0-9]+(\\.[0-9]+)?$"},"fee_amount":{"type":"string","description":"The total fee amount for the onramp transfer, denominated in the deposit_currency"},"deposit_transaction_hash":{"type":"string","description":"The transaction hash of the completed deposit","nullable":true}}}}}}}}
```
