{"metadata":{"image":[],"title":"","description":""},"api":{"url":"","auth":"required","results":{"codes":[]},"settings":"","params":[]},"next":{"description":"","pages":[]},"title":"Easy Merchant Services & Merchant Accounts","type":"basic","slug":"easy-merchant-services-merchant-accounts","excerpt":"You customers withdrawing from crypto to fiat on your platform using Wyre","body":"**For Merchants, Processors and Point-of-Sale Solutions**\n\nIf you are operating or launching a payment processing gateway or point-of-sale solution, your merchant users can accept crypto and off-ramp any supported combination of fiat and crypto using Wyre. \n[block:callout]\n{\n  \"type\": \"info\",\n  \"body\": \"1. Onboard your company in the Wyre [test dashboard](https://dash.testwyre.com).\\n2. Get your Account ID and API Keys from the dash.\\n3. [Create a Wallet](doc:create-account) for your users to hold crypto.\\n4. [Connect a Bank](https://www.sendwyre.com/legacy-docs/#payment-methods) to receive fiat payouts.\\n5. [Use Transfers](doc:create-transfer) to withdraw crypto to a connected bank.\",\n  \"title\": \"The Flow at a High-Level:\"\n}\n[/block]\n\n[block:api-header]\n{\n  \"title\": \"Steps 1-2 - Business Account Setup\"\n}\n[/block]\nYou will need to register your business with Wyre to access our API using your API Keys. \n[block:callout]\n{\n  \"type\": \"info\",\n  \"title\": \"Business Account Setup:\",\n  \"body\": \"* Test [dashboard](http://dash.testwyre.com/) access.\\n* Production [dashboard](http://dash.sendwyre.com/) access.\\n* Select the proper [environment](docs:productiontest-environments).\\n* [Authenticate and sign requests](doc:authentication).\\n* Contact [sales:::at:::sendwyre.com](mailto:[email protected]) for production access.\"\n}\n[/block]\n\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/56802d0-dashboard.png\",\n        \"dashboard.png\",\n        800,\n        424,\n        \"#333\"\n      ]\n    }\n  ]\n}\n[/block]\n**Wallet & Bank Actions**\n[block:api-header]\n{\n  \"title\": \"Step 3 - Creating Wallets\"\n}\n[/block]\nOnce a new user registers on your platform, create a [wallet](doc:create-wallet) for that user. This user is under your control, and stored on Wyre. *To the end user, they only ever see your brands look/feel. Not Wyre.*\n\nWallets are used to custody crypto on your platform. Each wallet generates new BTC and ETH addresses. Wyre can support a number of ERC20 tokens using the same ETH address. View the [Supported Currencies](doc:supported-currencies-1). \n\nIt is possible to create wallets in three categories, DEFAULT, ENTERPRISE and SAVINGS. If your app or users would benefit from holding crypto and earning interest, consider creating a [SAVINGS](doc:creating-crypto-savings-accounts) wallet. Contact [sales](mailto:[email protected]) to activate the SAVINGS feature and discuss interest rates.\n[block:callout]\n{\n  \"type\": \"info\",\n  \"title\": \"Creating Wallets:\",\n  \"body\": \"* Create [wallets](doc:create-wallet) for your merchant users.\\n* Save the returned \\\"id\\\" that gets generated in the response as this will be used later to create transfers.\"\n}\n[/block]\n\n[block:api-header]\n{\n  \"title\": \"Step 4 - Connecting a Bank\"\n}\n[/block]\nOnce a new merchant user has a wallet, you can attach a [bank account](https://www.sendwyre.com/legacy-docs/#payment-methods) to send fiat payouts via ACH. Within the Wyre API we call bank accounts \"payment methods.\" This process attaches a merchant user's payment method to your platform's Wyre account.   \n[block:callout]\n{\n  \"type\": \"info\",\n  \"title\": \"Connecting a Bank:\",\n  \"body\": \"* Connect a [payment method](https://www.sendwyre.com/legacy-docs/#payment-methods).\\n* Set the \\\"chargeablePM\\\" parameter to \\\"false.\\\" This makes the payment only available for receiving funds.\\n* When setting \\\"chargeablePM: false\\\" the payment method status will remain \\\"AWAITING_FOLLOWUP.\\\" This allows you to bypass the bank statement upload requirement.\\n* If you set \\\"chargeablePM: true\\\" or leave at the default setting a bank statement upload will be required.\\n* Save the returned \\\"id\\\" that gets generated in the response as this will be used later to create transfers.\"\n}\n[/block]\n\n[block:api-header]\n{\n  \"title\": \"Step 5 - Creating Transfers\"\n}\n[/block]\nOnce a new user has an account and an attached bank (payment method), they can start transferring funds if the account has a balance.\n[block:callout]\n{\n  \"type\": \"info\",\n  \"title\": \"Creating Transfers:\",\n  \"body\": \"* Transfers use the [Create Transfer](doc:create-transfer) endpoint. Transfers can happen between wallets, payment methods and crypto addresses. \\n* Transfers utilize our [SRNs](doc:srns). This is important because the SRNs are concatenated to the referenced IDs in the transfer. For example transfers between accounts have SRNs that look like this:\\n\\n **\\\"source\\\":\\\"wallet:WA_XXXXXXXX2\\\",**\\n **\\\"dest\\\":\\\"paymentmethod:PA-W7YN28ABCHT\\\",** \\n\\n* Save the returned \\\"id\\\" that gets generated in the response as this will be used later to track transfers.\"\n}\n[/block]\n\n[block:api-header]\n{\n  \"title\": \"The Off-Ramp Process\"\n}\n[/block]\nStep 5 above describes the [Create Transfer](doc:create-transfer) endpoint. This can be used to transfer funds out of an account. Both crypto to fiat can be off-ramped as determined by the \"dest\", \"sourceCurrency\", and \"destCurrency\" parameters .\n[block:callout]\n{\n  \"type\": \"info\",\n  \"title\": \"Off-Ramping\",\n  \"body\": \"* The merchant user can create a [Transfer](doc:create-transfer) to push funds from their account to their connected payment method. \\n\\nIn our example, the merchant would create a transfer from their SAVINGS wallet to their attached payment method, like below. \\n \\n **\\\"source\\\":\\\"wallet:WA_XXXXXXXX2\\\",**\\n **\\\"dest\\\":\\\"paymentmethod:PA_W7YN28ABCHT\\\",**\\n\\nA merchant could also create a transfer from their Bitcoin SAVINGS wallet to another crypto wallet, like below. \\n\\n **\\\"source\\\":\\\"wallet:WA_XXXXXXXX2\\\",**\\n **\\\"dest\\\":\\\"bitcoin:1DDfMQLTd8RhGzoyWyr1ENVdoeGaoq2MZH\\\",**\\n\\nTo see the full list of required parameters for a transfer [click here](doc:create-transfer).\"\n}\n[/block]","updates":[],"order":1,"isReference":false,"hidden":false,"sync_unique":"","link_url":"","link_external":false,"_id":"5fa2212c388a5d004855e48a","createdAt":"2020-11-04T03:34:04.605Z","user":"5f7f6ea298ba660011771f74","category":{"sync":{"isSync":false,"url":""},"pages":[],"title":"Cookbooks","slug":"testing","order":1,"from_sync":false,"reference":false,"_id":"5be8b3cbb910100044e20206","project":"550f74bb6fc8130d0038aad3","version":"550f75de61d9d30d00af9e01","createdAt":"2018-11-11T22:57:15.159Z","__v":0},"version":{"version":"3","version_clean":"3.0.0","codename":"","is_stable":true,"is_beta":true,"is_hidden":false,"is_deprecated":false,"categories":["550f75de61d9d30d00af9e02","551027e38579861900a86698","551029e08579861900a8669a","551029e7498062190006328a","5bc633a722d682005c9ad9e4","5bc633b08c4b0b000d6a7eaa","5bc633b48f3ff600626e3e18","5bc63538e5a6ba000d22ee6d","5bc63587a18a6b000decd295","5bc635c0937fcb0056223d9c","5bc6360f42f41800319aeaa6","5be5d13ff1d319002baca9ce","5be5d2287cd14d00291fbfdb","5be8b3b09f7cb70023c56a39","5be8b3cbb910100044e20206","5c1d769a4f6aed001fe527f0","5c402942010f0d001496dded","5e8127d61c906800374eeb1c","5f2768c98622b8005106544a","5f2768d05702ca0011f7655e","5f276e5348d2b600321aef9b","5f276fd300e519001139200a","5f9a2cb79dafe500259281a7"],"_id":"550f75de61d9d30d00af9e01","__v":23,"releaseDate":"2015-03-23T02:09:34.221Z","project":"550f74bb6fc8130d0038aad3","createdAt":"2015-03-23T02:09:34.221Z","forked_from":"550f74bb6fc8130d0038aad6"},"project":"550f74bb6fc8130d0038aad3","__v":0,"parentDoc":null}

Easy Merchant Services & Merchant Accounts

You customers withdrawing from crypto to fiat on your platform using Wyre

**For Merchants, Processors and Point-of-Sale Solutions** If you are operating or launching a payment processing gateway or point-of-sale solution, your merchant users can accept crypto and off-ramp any supported combination of fiat and crypto using Wyre. [block:callout] { "type": "info", "body": "1. Onboard your company in the Wyre [test dashboard](https://dash.testwyre.com).\n2. Get your Account ID and API Keys from the dash.\n3. [Create a Wallet](doc:create-account) for your users to hold crypto.\n4. [Connect a Bank](https://www.sendwyre.com/legacy-docs/#payment-methods) to receive fiat payouts.\n5. [Use Transfers](doc:create-transfer) to withdraw crypto to a connected bank.", "title": "The Flow at a High-Level:" } [/block] [block:api-header] { "title": "Steps 1-2 - Business Account Setup" } [/block] You will need to register your business with Wyre to access our API using your API Keys. [block:callout] { "type": "info", "title": "Business Account Setup:", "body": "* Test [dashboard](http://dash.testwyre.com/) access.\n* Production [dashboard](http://dash.sendwyre.com/) access.\n* Select the proper [environment](docs:productiontest-environments).\n* [Authenticate and sign requests](doc:authentication).\n* Contact [[email protected]](mailto:[email protected]) for production access." } [/block] [block:image] { "images": [ { "image": [ "https://files.readme.io/56802d0-dashboard.png", "dashboard.png", 800, 424, "#333" ] } ] } [/block] **Wallet & Bank Actions** [block:api-header] { "title": "Step 3 - Creating Wallets" } [/block] Once a new user registers on your platform, create a [wallet](doc:create-wallet) for that user. This user is under your control, and stored on Wyre. *To the end user, they only ever see your brands look/feel. Not Wyre.* Wallets are used to custody crypto on your platform. Each wallet generates new BTC and ETH addresses. Wyre can support a number of ERC20 tokens using the same ETH address. View the [Supported Currencies](doc:supported-currencies-1). It is possible to create wallets in three categories, DEFAULT, ENTERPRISE and SAVINGS. If your app or users would benefit from holding crypto and earning interest, consider creating a [SAVINGS](doc:creating-crypto-savings-accounts) wallet. Contact [sales](mailto:[email protected]) to activate the SAVINGS feature and discuss interest rates. [block:callout] { "type": "info", "title": "Creating Wallets:", "body": "* Create [wallets](doc:create-wallet) for your merchant users.\n* Save the returned \"id\" that gets generated in the response as this will be used later to create transfers." } [/block] [block:api-header] { "title": "Step 4 - Connecting a Bank" } [/block] Once a new merchant user has a wallet, you can attach a [bank account](https://www.sendwyre.com/legacy-docs/#payment-methods) to send fiat payouts via ACH. Within the Wyre API we call bank accounts "payment methods." This process attaches a merchant user's payment method to your platform's Wyre account. [block:callout] { "type": "info", "title": "Connecting a Bank:", "body": "* Connect a [payment method](https://www.sendwyre.com/legacy-docs/#payment-methods).\n* Set the \"chargeablePM\" parameter to \"false.\" This makes the payment only available for receiving funds.\n* When setting \"chargeablePM: false\" the payment method status will remain \"AWAITING_FOLLOWUP.\" This allows you to bypass the bank statement upload requirement.\n* If you set \"chargeablePM: true\" or leave at the default setting a bank statement upload will be required.\n* Save the returned \"id\" that gets generated in the response as this will be used later to create transfers." } [/block] [block:api-header] { "title": "Step 5 - Creating Transfers" } [/block] Once a new user has an account and an attached bank (payment method), they can start transferring funds if the account has a balance. [block:callout] { "type": "info", "title": "Creating Transfers:", "body": "* Transfers use the [Create Transfer](doc:create-transfer) endpoint. Transfers can happen between wallets, payment methods and crypto addresses. \n* Transfers utilize our [SRNs](doc:srns). This is important because the SRNs are concatenated to the referenced IDs in the transfer. For example transfers between accounts have SRNs that look like this:\n\n **\"source\":\"wallet:WA_XXXXXXXX2\",**\n **\"dest\":\"paymentmethod:PA-W7YN28ABCHT\",** \n\n* Save the returned \"id\" that gets generated in the response as this will be used later to track transfers." } [/block] [block:api-header] { "title": "The Off-Ramp Process" } [/block] Step 5 above describes the [Create Transfer](doc:create-transfer) endpoint. This can be used to transfer funds out of an account. Both crypto to fiat can be off-ramped as determined by the "dest", "sourceCurrency", and "destCurrency" parameters . [block:callout] { "type": "info", "title": "Off-Ramping", "body": "* The merchant user can create a [Transfer](doc:create-transfer) to push funds from their account to their connected payment method. \n\nIn our example, the merchant would create a transfer from their SAVINGS wallet to their attached payment method, like below. \n \n **\"source\":\"wallet:WA_XXXXXXXX2\",**\n **\"dest\":\"paymentmethod:PA_W7YN28ABCHT\",**\n\nA merchant could also create a transfer from their Bitcoin SAVINGS wallet to another crypto wallet, like below. \n\n **\"source\":\"wallet:WA_XXXXXXXX2\",**\n **\"dest\":\"bitcoin:1DDfMQLTd8RhGzoyWyr1ENVdoeGaoq2MZH\",**\n\nTo see the full list of required parameters for a transfer [click here](doc:create-transfer)." } [/block]