{"metadata":{"image":[],"title":"","description":""},"api":{"url":"/v3/orders/reserve","auth":"required","method":"post","examples":{"codes":[{"language":"curl","code":"curl -X POST \\\n  https://api.sendwyre.com/v3/orders/reserve \\\n  -H 'Authorization: Bearer WYRE_SECRET_KEY' \\\n  -H 'Content-Type: application/json' \\\n  -H 'cache-control: no-cache' \\\n  -d '{\n      \"amount\": \"10\",\n      \"paymentMethod\": \"debit-card\",\n      \"sourceCurrency\": \"USD\",\n      \"redirectUrl\": \"https://www.sendeyre.com\",\n      \"failureRedirectUrl\": \"https://www.sendwyre.com\",\n      \"referrerAccountId\": \"AC_XXXXXXXXXX\",\n      \"country\":\"US\",\n\t    \"lockFields\": [\"amount\"]\n\t}'"},{"code":"const axios = require('axios');\nconst testUrl = \"https://api.testwyre.com\";\nconst productionUrl = \"https://api.sendwyre.com\";\nconst WYRE_TEST_API_KEY = \"AK-xxxx-xxxx-xxxx\";\n\n// Example is assuming use of Express and Axios\n// Make sure you are using the proper API keys for the correct environment (test, prod).\nasync orderReservation(req, res, next) {\n        try {\n            const timestamp = new Date().getTime();\n            const url = `${testUrl}/v3/orders/reserve?timestamp=${timestamp}`;\n            const headers = {};\n            const body = {\n              referrerAccountId: req.body.referrerAccountId\n            }\n            const details = JSON.stringify(body);\n            headers['Content-Type'] = 'application/json';\n            headers['X-Api-Key'] = WYRE_TEST_API_KEY;\n            headers['X-Api-Signature'] = signature(url, details);\n            const config = {\n                method: \"POST\",\n                url: url,\n                headers: headers,\n                data: details\n            }\n            const response = await axios(config);\n            res.send(response.data);\n        } catch (error) {\n            next(error)\n        }\n    }\n\n//View signature example here: https://docs.sendwyre.com/docs/authentication#section-calculating-the-request-signature","language":"javascript"}]},"results":{"codes":[{"name":"","code":"{\n    \"url\": \"https://pay.testwyre.com/purchase?accountId=AC_XXXXXXXXXX&country=US&failureRedirectUrl=https%3A%2F%2Fwww.sendwyre.com&amount=10&redirectUrl=https%3A%2F%2Fwww.sendeyre.com&utm_campaign=AC_Y22RAQXEYV6&utm_medium=widget&paymentMethod=debit-card&reservation=EFX6DN9ECRPTPDJBEL6U&sourceCurrency=USD&utm_source=checkout\",\n    \"reservation\": \"EFX6DN9ECRPTPDJBEL6U\"\n}","language":"json","status":200}]},"settings":"","params":[{"name":"amount","type":"string","default":"","desc":"Order amount (without rates locking)","required":false,"in":"body","ref":"","_id":"5df1ebd9f7bd6502401073e2"},{"name":"sourceCurrency","type":"string","default":"","desc":"Such as USD, GBP, EUR, CAD, AUD. See [Presentment Currencies](https://docs.sendwyre.com/docs/getting-started-wyre-checkout#current-digital-assets-and-fiat-currencies)","required":false,"in":"body","ref":"","_id":"5df1ebd9f7bd6502401073e1"},{"name":"destCurrency","type":"string","default":"","desc":"Destination currency to the supplied Ex. \"ETH\"","required":false,"in":"body","ref":"","_id":"5df1ebd9f7bd6502401073e0"},{"name":"dest","type":"string","default":"","desc":"SRN of appropriate destination Ex. ethereum:0xBB9bc244D798123fDe783fCc1C72d3Bb8C189413","required":false,"in":"body","ref":"","_id":"5df1ebd9f7bd6502401073df"},{"name":"firstName","type":"string","default":"","desc":"Buyer's first name","required":false,"in":"body","ref":"","_id":"5e1e2fa8b407260011f2b4b9"},{"name":"lastName","type":"string","default":"","desc":"Buyer's last name (family name)","required":false,"in":"body","ref":"","_id":"5e1e2fa8b407260011f2b4b8"},{"name":"phone","type":"string","default":"","desc":"Valid phone in the [E.164](https://en.wikipedia.org/wiki/E.164) format.","required":false,"in":"body","ref":"","_id":"5e1e2fa8b407260011f2b4b7"},{"name":"email","type":"string","default":"","desc":"Valid email address","required":false,"in":"body","ref":"","_id":"5e1e2fa8b407260011f2b4b6"},{"name":"country","type":"string","default":"US","desc":"Country code (alpha2 country code)","required":false,"in":"body","ref":"","_id":"5e1e2fa8b407260011f2b4b5"},{"name":"postalCode","type":"string","default":"","desc":"Valid US zipcode or postal code","required":false,"in":"body","ref":"","_id":"5e1e2fa8b407260011f2b4b4"},{"name":"state","type":"string","default":"","desc":"Alpha2 code (2 characters) in uppercase for USA. Ex CA","required":false,"in":"body","ref":"","_id":"5e1e2fa8b407260011f2b4b3"},{"name":"city","type":"string","default":"","desc":"City name","required":false,"in":"body","ref":"","_id":"5e1e2fa8b407260011f2b4b2"},{"name":"street1","type":"string","default":"","desc":"Valid street line","required":false,"in":"body","ref":"","_id":"5e1e2fa8b407260011f2b4b1"},{"name":"lockFields","type":"array_string","default":"[]","desc":"Possible values are [\"amount\", \"sourceCurrency\", \"destCurrency\", \"dest\", \"street1\", \"city\", \"state\", \"postalCode\", \"country\", \"firstName\", \"lastName\", \"phone\", \"email\"]","required":false,"in":"body","ref":"","_id":"5f08b0f95418de02b537aa0f"},{"name":"redirectUrl","type":"string","default":"","desc":"Any valid HTTP URL","required":false,"in":"body","ref":"","_id":"5f0cb2d0e05dea005703a5cb"},{"name":"failureRedirectUrl","type":"string","default":"","desc":"Any valid HTTP URL","required":false,"in":"body","ref":"","_id":"5f0cb2d0e05dea005703a5ca"},{"name":"paymentMethod","type":"string","default":"","desc":"Possible values are `debit-card`, `apple-pay`","required":false,"in":"body","ref":"","_id":"5f0cb2d0e05dea005703a5c9"},{"name":"referrerAccountId","type":"string","default":"","desc":"Account id of the owner of the authentication","required":true,"in":"body","ref":"","_id":"5f2816a0220559020321ce6c"},{"name":"referenceId","type":"string","default":"","desc":"[optional] your own reference id (useful for webhooks)","required":false,"in":"body","ref":"","_id":"5f40165fb3e73d069839f244"},{"name":"hideTrackBtn","type":"boolean","default":"[optional] false","desc":"Used to disable the track button at the complete page","required":false,"in":"body","ref":"","_id":"5f7e285ed8732c0061366b24"},{"name":"sourceAmount","type":"string","default":"[optional]","desc":"The fiat amount","required":false,"in":"body","ref":"","_id":"5f982913c6324e0045c90fc8"},{"name":"destAmount","type":"string","default":"[optional]","desc":"The crypto amount","required":false,"in":"body","ref":"","_id":"5f982913c6324e0045c90fc7"},{"name":"amountIncludeFees","type":"boolean","default":"[optional]","desc":"Tells if the sourceAmount OR destAmount includes fees or not","required":false,"in":"body","ref":"","_id":"5f982913c6324e0045c90fc6"}]},"next":{"description":"","pages":[]},"title":"Wallet Order Reservations","type":"endpoint","slug":"wallet-order-reservations","excerpt":"Lock in wallet order via API before allowing widget operation","body":"The returned reservation id can be used to populate the [Checkout - Hosted Dialog](doc:wyre-checkout-hosted-dialog). The `url` can also be accessed directly and presented to users as hosted way to complete checkout.  \n[block:api-header]\n{\n  \"title\": \"Internationalization\"\n}\n[/block]\nThe API supports international address details. A province or administrative area, such as a county, can be entered in the \"state\" parameter. The example below features an address in Norway, which has counties instead of states. The county name is listed in the state field.\n\n**Note:** Localized presentment currencies will enjoy higher conversion rates than setting USD as the sourceCurrency for international users.\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"{\\n    \\\"sourceAmount\\\": \\\"100\\\",\\n    \\\"amountIncludeFees\\\": false,\\n    \\\"paymentMethod\\\": \\\"debit-card\\\",\\n    \\\"sourceCurrency\\\": \\\"NOK\\\",\\n    \\\"destCurrency\\\": \\\"BTC\\\",\\n    \\\"dest\\\": \\\"bitcoin:1BvBMSEYstWetqTFn5Au4m4GFg7xJaNVN2\\\",\\n    \\\"referrerAccountId\\\": \\\"AC_XXXXXXXXXX\\\",\\n    \\\"street1\\\": \\\"Bergjelandsgt. 30\\\",\\n    \\\"postalCode\\\":\\\"4012\\\",\\n    \\\"city\\\": \\\"Stavanger\\\",\\n    \\\"state\\\":\\\"Rogaland\\\",\\n    \\\"country\\\":\\\"NO\\\"\\n}\",\n      \"language\": \"json\",\n      \"name\": \"International Request\"\n    }\n  ]\n}\n[/block]\nYou can choose a different sourceCurrency to charge a card if a local sourceCurrency does not support a desired market pair.\n[block:api-header]\n{\n  \"title\": \"Rates Locking\"\n}\n[/block]\nTo use rates locking you must use specific fields.\n \nWhen `sourceAmount`/`destAmount` is specified, `amountIncludeFees` is mandatory. \nWhen `amount` is specified, you are not locking the rates. \n\nNecessary Fields for Rates Locking:\n`sourceAmount` OR `destAmount`, not both,\n`amountIncludeFees` Ex. true\n`paymentMethod` Ex. \"debit-card\",\n`sourceCurrency` Ex. \"USD\",\n`destCurrency` Ex. \"ETH\",\n`dest` Ex. \"ethereum:0x9E01E0E60dF079136a7a1d4ed97d709D5Fe3e341\",\n`referrerAccountId` Ex. \"AC_XXXXXXXXXX\",\n`country` Ex. \"US\"\n\n**How amountIncludeFees Works:** \n`amountIncludeFees` = false\nFees are added on top: $100 + fees will be charged to the user. The user receives the full $100 in value.\n \n`amountIncludeFees` = true\nFees will be subtracted from the amount: $100 - fees will be sent to the user's wallet. The user receives the amount less the fees.\n[block:callout]\n{\n  \"type\": \"info\",\n  \"body\": \"Locked quotes are good for 15 minutes. After that, the reservation is expired.\",\n  \"title\": \"Rate Locking Expiration\"\n}\n[/block]\n\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"curl -X POST \\\\\\n  API_URL/v3/orders/reserve \\\\\\n  -H 'Authorization: Bearer WYRE_SECRET_KEY' \\\\\\n  -H 'Content-Type: application/json' \\\\\\n  -H 'cache-control: no-cache' \\\\\\n  -d '{\\n    \\\"sourceAmount\\\": \\\"10\\\",\\n    \\\"amountIncludeFees\\\": false,\\n    \\\"paymentMethod\\\": \\\"debit-card\\\",\\n    \\\"sourceCurrency\\\": \\\"USD\\\",\\n    \\\"destCurrency\\\": \\\"ETH\\\",\\n    \\\"dest\\\": \\\"ethereum:0x9E01E0E60dF079136a7a1d4ed97d709D5Fe3e341\\\",\\n    \\\"redirectUrl\\\": \\\"https://www.sendeyre.com\\\",\\n    \\\"failureRedirectUrl\\\": \\\"https://www.sendwyre.com\\\",\\n    \\\"referrerAccountId\\\": \\\"AC_XXXXXXXXXX\\\",\\n    \\\"country\\\":\\\"US\\\",\\n\\t  \\\"lockFields\\\": [\\\"amount\\\"]\\n\\t}'\",\n      \"language\": \"curl\",\n      \"name\": \"Reservation with rates locking\"\n    }\n  ]\n}\n[/block]\n**Next:** You need to GET the [Rate Locked Reservation](doc:rate-locked-reservation) endpoint. This will return the response below, and allows you to display rates and fees in your UI before completing the transaction. \n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"{\\n   \\\"amount\\\":null,\\n   \\\"sourceCurrency\\\":\\\"USD\\\",\\n   \\\"destCurrency\\\":\\\"ETH\\\",\\n   \\\"dest\\\":\\\"ethereum:0x9E01E0E60dF079136a7a1d4ed97d709D5Fe3e341\\\",\\n   \\\"referrerAccountId\\\":\\\"AC______AAAA\\\",\\n   \\\"sourceAmount\\\":null,\\n   \\\"destAmount\\\":0.02,\\n   \\\"amountIncludeFees\\\":true,\\n   \\\"street1\\\":\\\"1550 Bryant Street\\\",\\n   \\\"city\\\":\\\"San Francisco\\\",\\n   \\\"state\\\":\\\"CA\\\",\\n   \\\"postalCode\\\":\\\"94103\\\",\\n   \\\"country\\\":\\\"US\\\",\\n   \\\"firstName\\\":\\\"\\\",\\n   \\\"lastName\\\":\\\"\\\",\\n   \\\"phone\\\":\\\"...\\\",\\n   \\\"email\\\":\\\"\\\",\\n   \\\"lockFields\\\":[\\n      \\\"sourceAmount\\\",\\n      \\\"destAmount\\\",\\n      \\\"amountIncludeFees\\\",\\n      \\\"paymentMethod\\\",\\n      \\\"country\\\",\\n      \\\"sourceCurrency\\\",\\n      \\\"destCurrency\\\",\\n      \\\"dest\\\",\\n      \\\"referrerAccountId\\\"\\n   ],\\n   \\\"redirectUrl\\\":\\\"http://google.com\\\",\\n   \\\"failureRedirectUrl\\\":\\\"http://google.com\\\",\\n   \\\"paymentMethod\\\":\\\"debit-card\\\",\\n   \\\"referenceId\\\":null,\\n   \\\"hideTrackBtn\\\":null,\\n   \\\"quote\\\":{\\n      \\\"sourceCurrency\\\":\\\"USD\\\",\\n      \\\"sourceAmount\\\":8.89,\\n      \\\"sourceAmountWithoutFees\\\":5.45,\\n      \\\"destCurrency\\\":\\\"ETH\\\",\\n      \\\"destAmount\\\":0.013,\\n      \\\"exchangeRate\\\":0.002388613861386138642579298795,\\n      \\\"equivalencies\\\":{\\n         \\\"GUSD\\\":5.26,\\n         \\\"USDC\\\":5.255737,\\n         \\\"EUR\\\":4.44,\\n         \\\"USDT\\\":5.255217,\\n         \\\"GBP\\\":4.03,\\n         \\\"DAI\\\":6.081825531005859375,\\n         \\\"USD\\\":5.25,\\n         \\\"CAD\\\":6.93,\\n         \\\"BUSD\\\":5.255736808466774984,\\n         \\\"USDS\\\":5.255737,\\n         \\\"HUSD\\\":5.25573681,\\n         \\\"BTC\\\":0.00039169,\\n         \\\"ETH\\\":0.013000000000000000,\\n         \\\"AUD\\\":7.38,\\n         \\\"PAX\\\":5.255736808466774984,\\n         \\\"WETH\\\":0.013000000000000000\\n      },\\n      \\\"fees\\\":{\\n         \\\"ETH\\\":0.007000000000000000,\\n         \\\"USD\\\":0.51\\n      }\\n   },\\n   \\\"quoteLockRequest\\\":true\\n}\",\n      \"language\": \"json\",\n      \"name\": null\n    }\n  ]\n}\n[/block]\n\nFor Card Processing API or Apple Pay White label you must use the values in the `quote` node as the rates are locked. For this reservation, the quote cannot be changed. \n[block:callout]\n{\n  \"type\": \"info\",\n  \"title\": \"Wallet Order Reservation Notes\",\n  \"body\": \"* You will only need an approved production Wyre account to generate the WORs. If you do not have an approved account they will fail automatically.\\n\\n* The generated reservation wallet order ID may only be used once. If the order fails, the ID will become unusable. \\n\\n* Any callbacks issued on behalf of the order will use the same order ID, so it can be useful for correlating Wyre order to data in your own database. \\n\\n* Reservations are good for **one hour**.\\n\\n* You should supply your own test dummy data. Do not use the ones in the samples.\"\n}\n[/block]\n\n[block:callout]\n{\n  \"type\": \"danger\",\n  \"body\": \"On August 3rd, 2020 WORs will be enforced for all use of the Widget on production. You will need an approved business account with Wyre to continue using the Widget. This will effectively break any integration that has not completed account verification and has had our team enable the WOR feature on their account. Please get in contact with the Wyre team if you have questions regarding this.\",\n  \"title\": \"Mandatory Enforcement of Wallet Order Reservations\"\n}\n[/block]","updates":["5e5136765249ac0055b77464"],"order":10,"isReference":true,"hidden":false,"sync_unique":"","link_url":"","link_external":false,"_id":"5df1ebd9f7bd6502401073dd","project":"550f74bb6fc8130d0038aad3","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","5fd92bf362bb7301b00e48ba"],"_id":"550f75de61d9d30d00af9e01","__v":24,"releaseDate":"2015-03-23T02:09:34.221Z","project":"550f74bb6fc8130d0038aad3","createdAt":"2015-03-23T02:09:34.221Z","forked_from":"550f74bb6fc8130d0038aad6"},"category":{"sync":{"isSync":false,"url":""},"pages":[],"title":"Wyre Checkout","slug":"wyre-sdk","order":3,"from_sync":false,"reference":true,"_id":"5bc63538e5a6ba000d22ee6d","project":"550f74bb6fc8130d0038aad3","version":"550f75de61d9d30d00af9e01","createdAt":"2018-10-16T19:00:08.331Z","__v":1},"user":"54eb8076867e1917009b7160","createdAt":"2019-12-12T07:27:21.451Z","__v":65,"parentDoc":null}

postWallet Order Reservations

Lock in wallet order via API before allowing widget operation

Definition

{{ api_url }}{{ page_api_url }}

Parameters

Body Params

amount:
string
Order amount (without rates locking)
sourceCurrency:
string
Such as USD, GBP, EUR, CAD, AUD. See [Presentment Currencies](https://docs.sendwyre.com/docs/getting-started-wyre-checkout#current-digital-assets-and-fiat-currencies)
destCurrency:
string
Destination currency to the supplied Ex. "ETH"
dest:
string
SRN of appropriate destination Ex. ethereum:0xBB9bc244D798123fDe783fCc1C72d3Bb8C189413
firstName:
string
Buyer's first name
lastName:
string
Buyer's last name (family name)
phone:
string
Valid phone in the [E.164](https://en.wikipedia.org/wiki/E.164) format.
email:
string
Valid email address
country:
stringUS
Country code (alpha2 country code)
postalCode:
string
Valid US zipcode or postal code
state:
string
Alpha2 code (2 characters) in uppercase for USA. Ex CA
city:
string
City name
street1:
string
Valid street line
lockFields:
array of strings[]
Possible values are ["amount", "sourceCurrency", "destCurrency", "dest", "street1", "city", "state", "postalCode", "country", "firstName", "lastName", "phone", "email"]
redirectUrl:
string
Any valid HTTP URL
failureRedirectUrl:
string
Any valid HTTP URL
paymentMethod:
string
Possible values are `debit-card`, `apple-pay`
referrerAccountId:
required
string
Account id of the owner of the authentication
referenceId:
string
[optional] your own reference id (useful for webhooks)
hideTrackBtn:
boolean[optional] false
Used to disable the track button at the complete page
sourceAmount:
string[optional]
The fiat amount
destAmount:
string[optional]
The crypto amount
amountIncludeFees:
boolean[optional]
Tells if the sourceAmount OR destAmount includes fees or not

Examples


Result Format


Documentation

The returned reservation id can be used to populate the [Checkout - Hosted Dialog](doc:wyre-checkout-hosted-dialog). The `url` can also be accessed directly and presented to users as hosted way to complete checkout. [block:api-header] { "title": "Internationalization" } [/block] The API supports international address details. A province or administrative area, such as a county, can be entered in the "state" parameter. The example below features an address in Norway, which has counties instead of states. The county name is listed in the state field. **Note:** Localized presentment currencies will enjoy higher conversion rates than setting USD as the sourceCurrency for international users. [block:code] { "codes": [ { "code": "{\n \"sourceAmount\": \"100\",\n \"amountIncludeFees\": false,\n \"paymentMethod\": \"debit-card\",\n \"sourceCurrency\": \"NOK\",\n \"destCurrency\": \"BTC\",\n \"dest\": \"bitcoin:1BvBMSEYstWetqTFn5Au4m4GFg7xJaNVN2\",\n \"referrerAccountId\": \"AC_XXXXXXXXXX\",\n \"street1\": \"Bergjelandsgt. 30\",\n \"postalCode\":\"4012\",\n \"city\": \"Stavanger\",\n \"state\":\"Rogaland\",\n \"country\":\"NO\"\n}", "language": "json", "name": "International Request" } ] } [/block] You can choose a different sourceCurrency to charge a card if a local sourceCurrency does not support a desired market pair. [block:api-header] { "title": "Rates Locking" } [/block] To use rates locking you must use specific fields. When `sourceAmount`/`destAmount` is specified, `amountIncludeFees` is mandatory. When `amount` is specified, you are not locking the rates. Necessary Fields for Rates Locking: `sourceAmount` OR `destAmount`, not both, `amountIncludeFees` Ex. true `paymentMethod` Ex. "debit-card", `sourceCurrency` Ex. "USD", `destCurrency` Ex. "ETH", `dest` Ex. "ethereum:0x9E01E0E60dF079136a7a1d4ed97d709D5Fe3e341", `referrerAccountId` Ex. "AC_XXXXXXXXXX", `country` Ex. "US" **How amountIncludeFees Works:** `amountIncludeFees` = false Fees are added on top: $100 + fees will be charged to the user. The user receives the full $100 in value. `amountIncludeFees` = true Fees will be subtracted from the amount: $100 - fees will be sent to the user's wallet. The user receives the amount less the fees. [block:callout] { "type": "info", "body": "Locked quotes are good for 15 minutes. After that, the reservation is expired.", "title": "Rate Locking Expiration" } [/block] [block:code] { "codes": [ { "code": "curl -X POST \\\n API_URL/v3/orders/reserve \\\n -H 'Authorization: Bearer WYRE_SECRET_KEY' \\\n -H 'Content-Type: application/json' \\\n -H 'cache-control: no-cache' \\\n -d '{\n \"sourceAmount\": \"10\",\n \"amountIncludeFees\": false,\n \"paymentMethod\": \"debit-card\",\n \"sourceCurrency\": \"USD\",\n \"destCurrency\": \"ETH\",\n \"dest\": \"ethereum:0x9E01E0E60dF079136a7a1d4ed97d709D5Fe3e341\",\n \"redirectUrl\": \"https://www.sendeyre.com\",\n \"failureRedirectUrl\": \"https://www.sendwyre.com\",\n \"referrerAccountId\": \"AC_XXXXXXXXXX\",\n \"country\":\"US\",\n\t \"lockFields\": [\"amount\"]\n\t}'", "language": "curl", "name": "Reservation with rates locking" } ] } [/block] **Next:** You need to GET the [Rate Locked Reservation](doc:rate-locked-reservation) endpoint. This will return the response below, and allows you to display rates and fees in your UI before completing the transaction. [block:code] { "codes": [ { "code": "{\n \"amount\":null,\n \"sourceCurrency\":\"USD\",\n \"destCurrency\":\"ETH\",\n \"dest\":\"ethereum:0x9E01E0E60dF079136a7a1d4ed97d709D5Fe3e341\",\n \"referrerAccountId\":\"AC______AAAA\",\n \"sourceAmount\":null,\n \"destAmount\":0.02,\n \"amountIncludeFees\":true,\n \"street1\":\"1550 Bryant Street\",\n \"city\":\"San Francisco\",\n \"state\":\"CA\",\n \"postalCode\":\"94103\",\n \"country\":\"US\",\n \"firstName\":\"\",\n \"lastName\":\"\",\n \"phone\":\"...\",\n \"email\":\"\",\n \"lockFields\":[\n \"sourceAmount\",\n \"destAmount\",\n \"amountIncludeFees\",\n \"paymentMethod\",\n \"country\",\n \"sourceCurrency\",\n \"destCurrency\",\n \"dest\",\n \"referrerAccountId\"\n ],\n \"redirectUrl\":\"http://google.com\",\n \"failureRedirectUrl\":\"http://google.com\",\n \"paymentMethod\":\"debit-card\",\n \"referenceId\":null,\n \"hideTrackBtn\":null,\n \"quote\":{\n \"sourceCurrency\":\"USD\",\n \"sourceAmount\":8.89,\n \"sourceAmountWithoutFees\":5.45,\n \"destCurrency\":\"ETH\",\n \"destAmount\":0.013,\n \"exchangeRate\":0.002388613861386138642579298795,\n \"equivalencies\":{\n \"GUSD\":5.26,\n \"USDC\":5.255737,\n \"EUR\":4.44,\n \"USDT\":5.255217,\n \"GBP\":4.03,\n \"DAI\":6.081825531005859375,\n \"USD\":5.25,\n \"CAD\":6.93,\n \"BUSD\":5.255736808466774984,\n \"USDS\":5.255737,\n \"HUSD\":5.25573681,\n \"BTC\":0.00039169,\n \"ETH\":0.013000000000000000,\n \"AUD\":7.38,\n \"PAX\":5.255736808466774984,\n \"WETH\":0.013000000000000000\n },\n \"fees\":{\n \"ETH\":0.007000000000000000,\n \"USD\":0.51\n }\n },\n \"quoteLockRequest\":true\n}", "language": "json", "name": null } ] } [/block] For Card Processing API or Apple Pay White label you must use the values in the `quote` node as the rates are locked. For this reservation, the quote cannot be changed. [block:callout] { "type": "info", "title": "Wallet Order Reservation Notes", "body": "* You will only need an approved production Wyre account to generate the WORs. If you do not have an approved account they will fail automatically.\n\n* The generated reservation wallet order ID may only be used once. If the order fails, the ID will become unusable. \n\n* Any callbacks issued on behalf of the order will use the same order ID, so it can be useful for correlating Wyre order to data in your own database. \n\n* Reservations are good for **one hour**.\n\n* You should supply your own test dummy data. Do not use the ones in the samples." } [/block] [block:callout] { "type": "danger", "body": "On August 3rd, 2020 WORs will be enforced for all use of the Widget on production. You will need an approved business account with Wyre to continue using the Widget. This will effectively break any integration that has not completed account verification and has had our team enable the WOR feature on their account. Please get in contact with the Wyre team if you have questions regarding this.", "title": "Mandatory Enforcement of Wallet Order Reservations" } [/block]