This flow will allow you to programmatically create wire deposit funding Transfers.
STEP 1
Create a Payment Method using a customer's details
STEP 2
Use the created payment method as the "source" in a transfer, and your account as the "dest", and specify the amount the customer wants to wire in as the "destAmount". For example, if the customer from Step 1 wants to deposit $200 you would make a request like the following:
//POST to https://api.sendwyre.com/v2/transfers
{
"source": "paymentMethod:[ID returned in step 1]"
"dest": "account:[Your accountId]", // account ID can be found here: https://dash.sendwyre.com/settings/basic-info
"sourceCurrency": "USD",
"destCurrency": "USD",
"destAmount": 200,
"message":"USD Personal example"
}
Legacy API Usage - Note: If you want to manage customer balances in individual "buckets" instead of having all of the funds deposited in your account you can check out the . You can create a wallet for a specific user and then use that as their SRN as the "dest" in the above request.
STEP 3
After creating the transfer, you will need to ping the GET transfer route to view the fields with wiring instructions. All of the information you need to present to your customer is under the "chargeInfo" object.
On the root of the "chargeInfo" object is an amount. This amount might be different than what you submitted by a couple of cents. This is the amount the customer needs to send in so we can identify the wire.
The "wireDetails" sub-object will contain the bank information where the customer needs to send the wire.
You can see an example below:
{
"id": "TDCQ8AN4UF9",
"status": "PENDING",
"failureReason": null,
"language": "en",
"createdAt": 1490852578000,
"completedAt": 1490897677000,
"depositInitiatedAt": 1490852583000,
"chargeInfo": {
"id": "GQDGQAPAGRN",
"paymentMethodId": "9MB9B2ZUYFX",
"providerId": "GQDGQAPAGRN",
"createdAt": 1490852583000,
"updatedAt": 1490852583000,
"currency": "USD",
"amount": 200.01,
"fees": 0,
"txId": "J2TLD63RMDN",
"owner": "account:1234567890",
"callerIp": "XX.XXX.XXX.XXX",
"completePaymentUrl": null,
"completionExpectedAt": null,
"waitingPrompts": [],
"wireDetails": {
"instructions": "",
"accountName": "Money Clearing Account",
"bankAddress": "Main St. Bank<br/> 1234 Main Street<br /> San Francisco, CA 94107",
"bankPhone": "XXX.XXX.XXXX",
"routingNumber": "XXXXXXXXX",
"accountNumber": "XXXXXXXXX",
"beneficiary": "WYRE INC",
"beneficiaryAddress": "1234 Main Street<br /> San Francisco, CA 94107",
"intermediaryBank": "Banky McBanker's Bank<br/> San Francisco, CA 94107",
"swiftCode": "XXXXXX00",
"abaNumber": "0000000",
"otherInstructions": "You can complete the transfer by following these steps:<br/><br/>1.) Print or download the details<br/>2.) Send the exact amount to the bank details listed above (You can send money through online banking or mobile banking, etc.)<br/>3.) You will receive an email notification with the transfer details"
},
"status": "PENDING"
},
"cancelledAt": null,
"expiresAt": 1490852878000,
"owner": "account:1234567890",
"source": "paymentmethod:9MB9B2ZUYFX",
"dest": "account:1234567890",
"sourceCurrency": "USD",
"sourceAmount": 200.00,
"destCurrency": "USD",
"destAmount": 200.00,
"exchangeRate": null,
"desc": null,
"message": null,
"totalFees": 0,
"equivalencies": {
....
},
....
"fees": {
"USD": 0.00
}
}
STEP 4
Once we receive the wire for the amount specified in #3 we will complete the Transfer and the funds will be available in your Wyre account.