{"_id":"5bee3ba89b49e80044631d3e","project":"59f79e3c584eb200345ceafc","version":{"_id":"5ba178b00a916500030c6a21","project":"59f79e3c584eb200345ceafc","__v":24,"forked_from":"59f79e3c584eb200345ceaff","createdAt":"2015-09-17T03:47:20.956Z","releaseDate":"2015-09-17T03:47:20.956Z","categories":["5ba178b00a916500030c69a2","5ba178b00a916500030c69a3","5ba178b00a916500030c69a4","5ba178b00a916500030c69a5","5ba178b00a916500030c69a6","5ba178b00a916500030c69a7","5ba178b00a916500030c69a8","5ba178b00a916500030c69a9","5ba178b00a916500030c69aa","5ba178b00a916500030c69ab","5ba178b00a916500030c69ac","5afb6888212c690003ae3d3b","5ba178b00a916500030c69ad","5ba178b00a916500030c69ae","5ba2dcbc99f53f0003b97e2c","5babd73fa0ab3e0003ead030","5bb4038be7222e000334dd97","5bb55954478c1300031a44c2","5bb665a1607307000327c81e","5bb6f90229a7fb0003a0650d","5bb7f9bc29a7fb0003a07ac1","5bba58bd7ba7710003bd901d","5bba6dac7ba7710003bd908d","5bba6e257ba7710003bd9090","5bbac87810189c0003e619ea","5bbb9d02b5862c00036266b2","5bbbadb6219c3e000376c2de","5bc417751d1b0000182bf7f6","5bc59e3b2a5b4f0044db5b97","5bc7bbce2262cc0041f6eff2","5bce6a3580a7250031199f34","5bcfac2c4082510019f2d91b","5bcfac3757bed90030e45d68","5bcfac45d305bc0049941539","5bd2a43548bb6f00289c8fad","5bd3a42a026ebe001f66259e","5bd9d5afffe003005b02f97b","5becb7ee85c6b300557662b6"],"is_deprecated":false,"is_hidden":false,"is_beta":true,"is_stable":false,"codename":"","version_clean":"3.2.0","version":"3.2"},"category":{"_id":"5becb7ee85c6b300557662b6","project":"59f79e3c584eb200345ceafc","version":"5ba178b00a916500030c6a21","__v":0,"sync":{"url":"","isSync":false},"reference":false,"createdAt":"2018-11-15T00:03:58.167Z","from_sync":false,"order":16,"slug":"loans-revolving","title":"Revolving Loans"},"user":"5557e76e512c300d007730d1","__v":0,"parentDoc":null,"updates":[],"next":{"pages":[],"description":""},"createdAt":"2018-11-16T03:38:16.118Z","link_external":false,"link_url":"","sync_unique":"","hidden":false,"api":{"examples":{"codes":[]},"settings":"","results":{"codes":[]},"auth":"required","params":[],"url":""},"isReference":false,"order":4,"body":"To make a loan payment you will need to create a transaction with a valid payment product. This transaction will designate the from node as the payment method and the to node as the loan account.\n\nSee below for payment methods.\n[block:parameters]\n{\n  \"data\": {\n    \"h-0\": \"Transaction Method\",\n    \"h-1\": \"Fund\",\n    \"h-2\": \"Withdraw\",\n    \"0-2\": \"NO\",\n    \"1-2\": \"NO\",\n    \"3-2\": \"YES\",\n    \"4-2\": \"YES\",\n    \"0-1\": \"YES\",\n    \"1-1\": \"YES\",\n    \"3-1\": \"YES\",\n    \"4-1\": \"YES\",\n    \"0-0\": \"DEPOSIT-US\",\n    \"1-0\": \"ACH\",\n    \"3-0\": \"\",\n    \"2-0\": \"SUBACCOUNT-US\",\n    \"2-1\": \"YES\",\n    \"2-2\": \"NO\"\n  },\n  \"cols\": 3,\n  \"rows\": 3\n}\n[/block]\n##Loan Payment Questions\n\n**Can users pay their loan repayments ahead of schedule?**\nYes, the user can change their payment date and pay early. \n\nFor example: If a user’s payment is due on the 20th of the month and the user pays early on the 1st. Then the rest of their scheduled repayments will get shifted up to the 1st of the month.\n\n**Can users put off or delay loan repayments?**\nYes, users will receive loan repayment reminder via text message in which they will have the option to “snooze” payments. Users can snooze payments up to two weeks and this will change their repayment schedule. \n\nFor example: If a user’s payment is due on the 5th of the month and the user snoozes until the 10th. Then the rest of their scheduled repayments will get shifted until the 10th of the month.\n\n**Can the user change their installment?**\nYes, the user can adjust their installment by doing `PATCH` on the node.\n\n**What happens when a loan is paid off?**\nThe loan account will be closed but still available for the user to see the history of the loan. If it is a one time loan, once the loan is paid off and balance is zero, the node status will change to `INACTIVE`. If it is a revolving loan, once the loan is paid off for the last time (balance is zero) and the user wants to close the account, the node status will change to `LOCKED`.\n\n**What if the user pays off earlier?**\nIf the user pays earlier, they will not pay the cap amount. If a user is late on payments, the most they will have to pay is the cap amount.\n\nThis incentivizes the user to pay earlier to not have to pay the cap amount but also does not penalize users for paying late.\n\n**What if the user does not pay off the loan?**\nIf the loan is not paid off in a certain period of time, the platform can close the user’s loan account and the remaining negative ending balance would be reconciled out of the platform's loan reserve account. Then the loan would be closed after the balance is zero. \n\n##API Endpoint\nhttps://uat-api.synapsefi.com/v3.1/users/:user_id/nodes/:node_id/trans\n\n##PATH PARAMETER##\n[block:html]\n{\n  \"html\": \"<div class=\\\"api-manager\\\"><div class=\\\"param-table\\\"><div class=\\\"table\\\"><div class=\\\"tr\\\"><div class=\\\"td param\\\"> <strong>user_id <span class=\\\"colon\\\">:</span> </strong><div class=\\\"required\\\">required</div></div><div class=\\\"td\\\"> <strong class=\\\"param-type\\\">string</strong><div marked=\\\"\\\" class=\\\"ng-isolate-scope\\\"><p>ID of sender (user)</p></div></div></div><div class=\\\"tr\\\"><div class=\\\"td param\\\"> <strong>node_id <span class=\\\"colon\\\">:</span> </strong><div class=\\\"required\\\">required</div></div><div class=\\\"td\\\"> <strong class=\\\"param-type\\\">string</strong><div marked=\\\"\\\" class=\\\"ng-isolate-scope\\\"><p>ID of sending node</p></div></div></div></div></div></div>\"\n}\n[/block]\n##BODY PARAMETER##\n[block:html]\n{\n  \"html\": \"<div class=\\\"api-manager\\\"><div class=\\\"param-table\\\"><div class=\\\"table\\\"><div class=\\\"tr\\\"><div class=\\\"td param\\\"> <strong> <span class=\\\"text-muted\\\">to.</span>type <span class=\\\"colon\\\">:</span> </strong><div class=\\\"required\\\">required</div></div><div class=\\\"td\\\"> <strong class=\\\"param-type\\\">string</strong><div marked=\\\"\\\" class=\\\"ng-isolate-scope\\\"><p>Receiving node type</p></div></div></div><div class=\\\"tr\\\"><div class=\\\"td param\\\"> <strong> <span class=\\\"text-muted\\\">to.</span>id <span class=\\\"colon\\\">:</span> </strong><div class=\\\"required\\\">required</div></div><div class=\\\"td\\\"> <strong class=\\\"param-type\\\">string</strong><div marked=\\\"\\\" class=\\\"ng-isolate-scope\\\"><p>Receiving node ID</p></div></div></div><div class=\\\"tr\\\"><div class=\\\"td param\\\"> <strong> <span class=\\\"text-muted\\\">amount.</span>amount <span class=\\\"colon\\\">:</span> </strong><div class=\\\"required\\\">required</div></div><div class=\\\"td\\\"> <strong class=\\\"param-type\\\">double</strong><div marked=\\\"\\\" class=\\\"ng-isolate-scope\\\"><p>Amount user wishes to send</p></div></div></div><div class=\\\"tr\\\"><div class=\\\"td param\\\"> <strong> <span class=\\\"text-muted\\\">amount.</span>currency <span class=\\\"colon\\\">:</span> </strong><div class=\\\"required\\\">required</div></div><div class=\\\"td\\\"> <strong class=\\\"param-type\\\">string</strong><div marked=\\\"\\\" class=\\\"ng-isolate-scope\\\"><p>Currency of the transaction amount</p></div></div></div><div class=\\\"tr\\\"><div class=\\\"td param\\\"> <strong> <span class=\\\"text-muted\\\">extra.</span>ip <span class=\\\"colon\\\">:</span> </strong><div class=\\\"required\\\">required</div></div><div class=\\\"td\\\"> <strong class=\\\"param-type\\\">string</strong><div marked=\\\"\\\" class=\\\"ng-isolate-scope\\\"><p>IP address of the user device while creating transaction</p></div></div></div><div class=\\\"tr\\\"><div class=\\\"td param\\\"> <strong> <span class=\\\"text-muted\\\">extra.</span>asset <span class=\\\"colon\\\">:</span> </strong></div><div class=\\\"td\\\"> <strong class=\\\"param-type\\\">string</strong><div marked=\\\"\\\" class=\\\"ng-isolate-scope\\\"><p>Assign this value only in case of making a transaction to or from <code>CRYPTO-US</code>. Acceptable values are <code>BTC</code> and <code>ETH</code></p></div></div></div><div class=\\\"tr\\\"><div class=\\\"td param\\\"> <strong> <span class=\\\"text-muted\\\">extra.</span>same_day <span class=\\\"colon\\\">:</span> </strong></div><div class=\\\"td\\\"> <strong class=\\\"param-type\\\">boolean</strong> <span class=\\\"param-default text-muted\\\">false</span><div marked=\\\"\\\" class=\\\"ng-isolate-scope\\\"><p>Set this to <code>true</code> if you wish to settle the ACH on same day. Please note this would only work, if same day ACH has been enabled for your platform</p></div></div></div><div class=\\\"tr\\\"><div class=\\\"td param\\\"> <strong> <span class=\\\"text-muted\\\">extra.</span>supp_id <span class=\\\"colon\\\">:</span> </strong></div><div class=\\\"td\\\"> <strong class=\\\"param-type\\\">string</strong><div marked=\\\"\\\" class=\\\"ng-isolate-scope\\\"><p>ID supplied to the transaction</p></div></div></div><div class=\\\"tr\\\"><div class=\\\"td param\\\"> <strong> <span class=\\\"text-muted\\\">extra.</span>group_id <span class=\\\"colon\\\">:</span> </strong></div><div class=\\\"td\\\"> <strong class=\\\"param-type\\\">string</strong><div marked=\\\"\\\" class=\\\"ng-isolate-scope\\\"><p>Group ID supplied to the transaction</p></div></div></div><div class=\\\"tr\\\"><div class=\\\"td param\\\"> <strong> <span class=\\\"text-muted\\\">extra.</span>note <span class=\\\"colon\\\">:</span> </strong></div><div class=\\\"td\\\"> <strong class=\\\"param-type\\\">string</strong><div marked=\\\"\\\" class=\\\"ng-isolate-scope\\\"><p>Memo tagged with the transaction</p></div></div></div><div class=\\\"tr\\\"><div class=\\\"td param\\\"> <strong> <span class=\\\"text-muted\\\">extra.</span>process_on <span class=\\\"colon\\\">:</span> </strong></div><div class=\\\"td\\\"> <strong class=\\\"param-type\\\">integer</strong> <span class=\\\"param-default text-muted\\\">0</span><div marked=\\\"\\\" class=\\\"ng-isolate-scope\\\"><p>When the transaction should be processed. The value is the delta value. Which means when 1 is supplied it means that the transaction will be processed tomorrow.</p></div></div></div><div class=\\\"tr\\\"><div class=\\\"td param\\\"> <strong> <span class=\\\"text-muted\\\">extra.other.</span>attachments <span class=\\\"colon\\\">:</span> </strong></div><div class=\\\"td\\\"> <strong class=\\\"param-type\\\">array of strings</strong><div marked=\\\"\\\" class=\\\"ng-isolate-scope\\\"><p>Array of padded base64 of attachments</p></div></div></div><div class=\\\"tr\\\"><div class=\\\"td param\\\"> <strong> <span class=\\\"text-muted\\\">fees[</span>fee <span class=\\\"text-muted\\\">]</span> <span class=\\\"colon\\\">:</span> </strong></div><div class=\\\"td\\\"> <strong class=\\\"param-type\\\">double</strong><div marked=\\\"\\\" class=\\\"ng-isolate-scope\\\"><p>Fee associated with the transaction</p></div></div></div><div class=\\\"tr\\\"><div class=\\\"td param\\\"> <strong> <span class=\\\"text-muted\\\">fees[</span>note <span class=\\\"text-muted\\\">]</span> <span class=\\\"colon\\\">:</span> </strong></div><div class=\\\"td\\\"> <strong class=\\\"param-type\\\">string</strong><div marked=\\\"\\\" class=\\\"ng-isolate-scope\\\"><p>Reason for the fee</p></div></div></div><div class=\\\"tr\\\"><div class=\\\"td param\\\"> <strong> <span class=\\\"text-muted\\\">fees[to].</span>id <span class=\\\"colon\\\">:</span> </strong></div><div class=\\\"td\\\"> <strong class=\\\"param-type\\\">string</strong><div marked=\\\"\\\" class=\\\"ng-isolate-scope\\\"><p>Node ID where the fee would be credited when the transaction settled. Fee node has to be DEPOSIT-US type always</p></div></div></div></div></div></div>\"\n}\n[/block]\nBelow is an example transaction for your convenience. Please refer to the appropriate payment product page for relevant details, including return/chargeback timelines with them:\n\n##EXAMPLE REQUEST\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"POST /v3.1/users/5bee109fc256c334c5348d09/nodes/5bee114e192dde00ac622d8f/trans HTTP/1.1\\nHost: https://uat-api.synapsefi.com\\nX-SP-USER-IP: 255.127.79.76\\nX-SP-USER: oauth_HBb0adELTAFlgYvX3Zn8QmKjMIk4tCN5uDqRce2U|e83cf6ddcf778e37bfe3d48fc78a6502062fc\\nContent-Type: application/json\\n{\\n  \\\"to\\\": {\\n    \\\"type\\\": \\\"LOAN-US\\\",\\n    \\\"id\\\": \\\"5bee11e7bab47500bc84a552\\\"\\n  },\\n  \\\"amount\\\": {\\n    \\\"amount\\\": 300.1,\\n    \\\"currency\\\": \\\"USD\\\"\\n  },\\n  \\\"extra\\\": {\\n    \\\"ip\\\": \\\"255.127.79.76\\\",\\n    \\\"note\\\": \\\"Loan payment\\\"\\n  }\",\n      \"language\": \"http\"\n    }\n  ]\n}\n[/block]\n##EXAMPLE RESPONSE\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"{\\n    \\\"_id\\\": \\\"5bee12e1a1c02600d55b5e7e\\\",\\n    \\\"_links\\\": {\\n        \\\"self\\\": {\\n            \\\"href\\\": \\\"https://uat-api.synapsefi.com/v3.1/users/5bee109fc256c334c5348d09/nodes/5bee114e192dde00ac622d8f/trans/5bee12e1a1c02600d55b5e7e\\\"\\n        }\\n    },\\n    \\\"_v\\\": 2,\\n    \\\"amount\\\": {\\n        \\\"amount\\\": 300.1,\\n        \\\"currency\\\": \\\"USD\\\"\\n    },\\n    \\\"client\\\": {\\n        \\\"id\\\": \\\"589acd9ecb3cd400fa75ac06\\\",\\n        \\\"name\\\": \\\"* SynapseFI\\\"\\n    },\\n    \\\"extra\\\": {\\n        \\\"asset\\\": null,\\n        \\\"created_on\\\": 1542329056403,\\n        \\\"encrypted_note\\\": \\\"\\\",\\n        \\\"group_id\\\": null,\\n        \\\"ip\\\": \\\"255.127.79.76\\\",\\n        \\\"latlon\\\": \\\"0,0\\\",\\n        \\\"note\\\": \\\"Loan payment\\\",\\n        \\\"process_on\\\": 1542329056403,\\n        \\\"same_day\\\": false,\\n        \\\"supp_id\\\": \\\"\\\"\\n    },\\n    \\\"fees\\\": [\\n        {\\n            \\\"fee\\\": 0,\\n            \\\"note\\\": \\\"Facilitator Fee\\\",\\n            \\\"to\\\": {\\n                \\\"id\\\": \\\"None\\\"\\n            }\\n        }\\n    ],\\n    \\\"from\\\": {\\n        \\\"id\\\": \\\"5bee114e192dde00ac622d8f\\\",\\n        \\\"nickname\\\": \\\"SynapsePay Test Checking Account - 8901\\\",\\n        \\\"type\\\": \\\"ACH-US\\\",\\n        \\\"user\\\": {\\n            \\\"_id\\\": \\\"5bee109fc256c334c5348d09\\\",\\n            \\\"legal_names\\\": [\\n                \\\"Test User\\\"\\n            ]\\n        }\\n    },\\n    \\\"recent_status\\\": {\\n        \\\"date\\\": 1542329056403,\\n        \\\"note\\\": \\\"Transaction Created.\\\",\\n        \\\"status\\\": \\\"CREATED\\\",\\n        \\\"status_id\\\": \\\"1\\\"\\n    },\\n    \\\"timeline\\\": [\\n        {\\n            \\\"date\\\": 1542329056403,\\n            \\\"note\\\": \\\"Transaction Created.\\\",\\n            \\\"status\\\": \\\"CREATED\\\",\\n            \\\"status_id\\\": \\\"1\\\"\\n        }\\n    ],\\n    \\\"to\\\": {\\n        \\\"id\\\": \\\"5bee11e7bab47500bc84a552\\\",\\n        \\\"nickname\\\": \\\"My Loan\\\",\\n        \\\"type\\\": \\\"LOAN-US\\\",\\n        \\\"user\\\": {\\n            \\\"_id\\\": \\\"5bee109fc256c334c5348d09\\\",\\n            \\\"legal_names\\\": [\\n                \\\"Test User\\\"\\n            ]\\n        }\\n    }\\n}\",\n      \"language\": \"json\"\n    }\n  ]\n}\n[/block]\n\n[block:callout]\n{\n  \"type\": \"info\",\n  \"title\": \"Subscribe to Webhooks\",\n  \"body\": \"We recommend that you [subscribe to webhooks](https://docs.synapsefi.com/v3.2/docs/subscribe-to-webhooks) to stay updated on the status of transactions.\"\n}\n[/block]\n\n[block:callout]\n{\n  \"type\": \"info\",\n  \"title\": \"Transaction Fees\",\n  \"body\": \"By default, we deduct transaction fees from the transaction. To send the recipient 100% of the funds, [designate the account you want to debit fees from](https://docs.synapsefi.com/v3.2/docs/facilitator-fees-for-transactions).\\n\\nOr take an additional `fee` for yourself and designate the DEPOSIT-US node you want to send fees to.\"\n}\n[/block]\n\n[block:callout]\n{\n  \"type\": \"info\",\n  \"body\": \"POST calls support idempotency for safely retrying requests without accidentally performing the same operation twice. For example, if a request to create a transaction fails due to a network connection error, you can retry the request with the same idempotency key to guarantee that only a single charge is created.\\n\\nTo perform an idempotent request, attach a unique key to any POST request made to the API via the X-SP-IDEMPOTENCY-KEY: <key> header.\\n\\nIdempotency keys expire after 24 hours.\",\n  \"title\": \"Idempotent Requests\"\n}\n[/block]","excerpt":"Create a transaction to pay off a loan","slug":"make-a-loan-payment-1","type":"basic","title":"Make A Loan Payment"}

Make A Loan Payment

Create a transaction to pay off a loan

To make a loan payment you will need to create a transaction with a valid payment product. This transaction will designate the from node as the payment method and the to node as the loan account. See below for payment methods. [block:parameters] { "data": { "h-0": "Transaction Method", "h-1": "Fund", "h-2": "Withdraw", "0-2": "NO", "1-2": "NO", "3-2": "YES", "4-2": "YES", "0-1": "YES", "1-1": "YES", "3-1": "YES", "4-1": "YES", "0-0": "DEPOSIT-US", "1-0": "ACH", "3-0": "", "2-0": "SUBACCOUNT-US", "2-1": "YES", "2-2": "NO" }, "cols": 3, "rows": 3 } [/block] ##Loan Payment Questions **Can users pay their loan repayments ahead of schedule?** Yes, the user can change their payment date and pay early. For example: If a user’s payment is due on the 20th of the month and the user pays early on the 1st. Then the rest of their scheduled repayments will get shifted up to the 1st of the month. **Can users put off or delay loan repayments?** Yes, users will receive loan repayment reminder via text message in which they will have the option to “snooze” payments. Users can snooze payments up to two weeks and this will change their repayment schedule. For example: If a user’s payment is due on the 5th of the month and the user snoozes until the 10th. Then the rest of their scheduled repayments will get shifted until the 10th of the month. **Can the user change their installment?** Yes, the user can adjust their installment by doing `PATCH` on the node. **What happens when a loan is paid off?** The loan account will be closed but still available for the user to see the history of the loan. If it is a one time loan, once the loan is paid off and balance is zero, the node status will change to `INACTIVE`. If it is a revolving loan, once the loan is paid off for the last time (balance is zero) and the user wants to close the account, the node status will change to `LOCKED`. **What if the user pays off earlier?** If the user pays earlier, they will not pay the cap amount. If a user is late on payments, the most they will have to pay is the cap amount. This incentivizes the user to pay earlier to not have to pay the cap amount but also does not penalize users for paying late. **What if the user does not pay off the loan?** If the loan is not paid off in a certain period of time, the platform can close the user’s loan account and the remaining negative ending balance would be reconciled out of the platform's loan reserve account. Then the loan would be closed after the balance is zero. ##API Endpoint https://uat-api.synapsefi.com/v3.1/users/:user_id/nodes/:node_id/trans ##PATH PARAMETER## [block:html] { "html": "<div class=\"api-manager\"><div class=\"param-table\"><div class=\"table\"><div class=\"tr\"><div class=\"td param\"> <strong>user_id <span class=\"colon\">:</span> </strong><div class=\"required\">required</div></div><div class=\"td\"> <strong class=\"param-type\">string</strong><div marked=\"\" class=\"ng-isolate-scope\"><p>ID of sender (user)</p></div></div></div><div class=\"tr\"><div class=\"td param\"> <strong>node_id <span class=\"colon\">:</span> </strong><div class=\"required\">required</div></div><div class=\"td\"> <strong class=\"param-type\">string</strong><div marked=\"\" class=\"ng-isolate-scope\"><p>ID of sending node</p></div></div></div></div></div></div>" } [/block] ##BODY PARAMETER## [block:html] { "html": "<div class=\"api-manager\"><div class=\"param-table\"><div class=\"table\"><div class=\"tr\"><div class=\"td param\"> <strong> <span class=\"text-muted\">to.</span>type <span class=\"colon\">:</span> </strong><div class=\"required\">required</div></div><div class=\"td\"> <strong class=\"param-type\">string</strong><div marked=\"\" class=\"ng-isolate-scope\"><p>Receiving node type</p></div></div></div><div class=\"tr\"><div class=\"td param\"> <strong> <span class=\"text-muted\">to.</span>id <span class=\"colon\">:</span> </strong><div class=\"required\">required</div></div><div class=\"td\"> <strong class=\"param-type\">string</strong><div marked=\"\" class=\"ng-isolate-scope\"><p>Receiving node ID</p></div></div></div><div class=\"tr\"><div class=\"td param\"> <strong> <span class=\"text-muted\">amount.</span>amount <span class=\"colon\">:</span> </strong><div class=\"required\">required</div></div><div class=\"td\"> <strong class=\"param-type\">double</strong><div marked=\"\" class=\"ng-isolate-scope\"><p>Amount user wishes to send</p></div></div></div><div class=\"tr\"><div class=\"td param\"> <strong> <span class=\"text-muted\">amount.</span>currency <span class=\"colon\">:</span> </strong><div class=\"required\">required</div></div><div class=\"td\"> <strong class=\"param-type\">string</strong><div marked=\"\" class=\"ng-isolate-scope\"><p>Currency of the transaction amount</p></div></div></div><div class=\"tr\"><div class=\"td param\"> <strong> <span class=\"text-muted\">extra.</span>ip <span class=\"colon\">:</span> </strong><div class=\"required\">required</div></div><div class=\"td\"> <strong class=\"param-type\">string</strong><div marked=\"\" class=\"ng-isolate-scope\"><p>IP address of the user device while creating transaction</p></div></div></div><div class=\"tr\"><div class=\"td param\"> <strong> <span class=\"text-muted\">extra.</span>asset <span class=\"colon\">:</span> </strong></div><div class=\"td\"> <strong class=\"param-type\">string</strong><div marked=\"\" class=\"ng-isolate-scope\"><p>Assign this value only in case of making a transaction to or from <code>CRYPTO-US</code>. Acceptable values are <code>BTC</code> and <code>ETH</code></p></div></div></div><div class=\"tr\"><div class=\"td param\"> <strong> <span class=\"text-muted\">extra.</span>same_day <span class=\"colon\">:</span> </strong></div><div class=\"td\"> <strong class=\"param-type\">boolean</strong> <span class=\"param-default text-muted\">false</span><div marked=\"\" class=\"ng-isolate-scope\"><p>Set this to <code>true</code> if you wish to settle the ACH on same day. Please note this would only work, if same day ACH has been enabled for your platform</p></div></div></div><div class=\"tr\"><div class=\"td param\"> <strong> <span class=\"text-muted\">extra.</span>supp_id <span class=\"colon\">:</span> </strong></div><div class=\"td\"> <strong class=\"param-type\">string</strong><div marked=\"\" class=\"ng-isolate-scope\"><p>ID supplied to the transaction</p></div></div></div><div class=\"tr\"><div class=\"td param\"> <strong> <span class=\"text-muted\">extra.</span>group_id <span class=\"colon\">:</span> </strong></div><div class=\"td\"> <strong class=\"param-type\">string</strong><div marked=\"\" class=\"ng-isolate-scope\"><p>Group ID supplied to the transaction</p></div></div></div><div class=\"tr\"><div class=\"td param\"> <strong> <span class=\"text-muted\">extra.</span>note <span class=\"colon\">:</span> </strong></div><div class=\"td\"> <strong class=\"param-type\">string</strong><div marked=\"\" class=\"ng-isolate-scope\"><p>Memo tagged with the transaction</p></div></div></div><div class=\"tr\"><div class=\"td param\"> <strong> <span class=\"text-muted\">extra.</span>process_on <span class=\"colon\">:</span> </strong></div><div class=\"td\"> <strong class=\"param-type\">integer</strong> <span class=\"param-default text-muted\">0</span><div marked=\"\" class=\"ng-isolate-scope\"><p>When the transaction should be processed. The value is the delta value. Which means when 1 is supplied it means that the transaction will be processed tomorrow.</p></div></div></div><div class=\"tr\"><div class=\"td param\"> <strong> <span class=\"text-muted\">extra.other.</span>attachments <span class=\"colon\">:</span> </strong></div><div class=\"td\"> <strong class=\"param-type\">array of strings</strong><div marked=\"\" class=\"ng-isolate-scope\"><p>Array of padded base64 of attachments</p></div></div></div><div class=\"tr\"><div class=\"td param\"> <strong> <span class=\"text-muted\">fees[</span>fee <span class=\"text-muted\">]</span> <span class=\"colon\">:</span> </strong></div><div class=\"td\"> <strong class=\"param-type\">double</strong><div marked=\"\" class=\"ng-isolate-scope\"><p>Fee associated with the transaction</p></div></div></div><div class=\"tr\"><div class=\"td param\"> <strong> <span class=\"text-muted\">fees[</span>note <span class=\"text-muted\">]</span> <span class=\"colon\">:</span> </strong></div><div class=\"td\"> <strong class=\"param-type\">string</strong><div marked=\"\" class=\"ng-isolate-scope\"><p>Reason for the fee</p></div></div></div><div class=\"tr\"><div class=\"td param\"> <strong> <span class=\"text-muted\">fees[to].</span>id <span class=\"colon\">:</span> </strong></div><div class=\"td\"> <strong class=\"param-type\">string</strong><div marked=\"\" class=\"ng-isolate-scope\"><p>Node ID where the fee would be credited when the transaction settled. Fee node has to be DEPOSIT-US type always</p></div></div></div></div></div></div>" } [/block] Below is an example transaction for your convenience. Please refer to the appropriate payment product page for relevant details, including return/chargeback timelines with them: ##EXAMPLE REQUEST [block:code] { "codes": [ { "code": "POST /v3.1/users/5bee109fc256c334c5348d09/nodes/5bee114e192dde00ac622d8f/trans HTTP/1.1\nHost: https://uat-api.synapsefi.com\nX-SP-USER-IP: 255.127.79.76\nX-SP-USER: oauth_HBb0adELTAFlgYvX3Zn8QmKjMIk4tCN5uDqRce2U|e83cf6ddcf778e37bfe3d48fc78a6502062fc\nContent-Type: application/json\n{\n \"to\": {\n \"type\": \"LOAN-US\",\n \"id\": \"5bee11e7bab47500bc84a552\"\n },\n \"amount\": {\n \"amount\": 300.1,\n \"currency\": \"USD\"\n },\n \"extra\": {\n \"ip\": \"255.127.79.76\",\n \"note\": \"Loan payment\"\n }", "language": "http" } ] } [/block] ##EXAMPLE RESPONSE [block:code] { "codes": [ { "code": "{\n \"_id\": \"5bee12e1a1c02600d55b5e7e\",\n \"_links\": {\n \"self\": {\n \"href\": \"https://uat-api.synapsefi.com/v3.1/users/5bee109fc256c334c5348d09/nodes/5bee114e192dde00ac622d8f/trans/5bee12e1a1c02600d55b5e7e\"\n }\n },\n \"_v\": 2,\n \"amount\": {\n \"amount\": 300.1,\n \"currency\": \"USD\"\n },\n \"client\": {\n \"id\": \"589acd9ecb3cd400fa75ac06\",\n \"name\": \"* SynapseFI\"\n },\n \"extra\": {\n \"asset\": null,\n \"created_on\": 1542329056403,\n \"encrypted_note\": \"\",\n \"group_id\": null,\n \"ip\": \"255.127.79.76\",\n \"latlon\": \"0,0\",\n \"note\": \"Loan payment\",\n \"process_on\": 1542329056403,\n \"same_day\": false,\n \"supp_id\": \"\"\n },\n \"fees\": [\n {\n \"fee\": 0,\n \"note\": \"Facilitator Fee\",\n \"to\": {\n \"id\": \"None\"\n }\n }\n ],\n \"from\": {\n \"id\": \"5bee114e192dde00ac622d8f\",\n \"nickname\": \"SynapsePay Test Checking Account - 8901\",\n \"type\": \"ACH-US\",\n \"user\": {\n \"_id\": \"5bee109fc256c334c5348d09\",\n \"legal_names\": [\n \"Test User\"\n ]\n }\n },\n \"recent_status\": {\n \"date\": 1542329056403,\n \"note\": \"Transaction Created.\",\n \"status\": \"CREATED\",\n \"status_id\": \"1\"\n },\n \"timeline\": [\n {\n \"date\": 1542329056403,\n \"note\": \"Transaction Created.\",\n \"status\": \"CREATED\",\n \"status_id\": \"1\"\n }\n ],\n \"to\": {\n \"id\": \"5bee11e7bab47500bc84a552\",\n \"nickname\": \"My Loan\",\n \"type\": \"LOAN-US\",\n \"user\": {\n \"_id\": \"5bee109fc256c334c5348d09\",\n \"legal_names\": [\n \"Test User\"\n ]\n }\n }\n}", "language": "json" } ] } [/block] [block:callout] { "type": "info", "title": "Subscribe to Webhooks", "body": "We recommend that you [subscribe to webhooks](https://docs.synapsefi.com/v3.2/docs/subscribe-to-webhooks) to stay updated on the status of transactions." } [/block] [block:callout] { "type": "info", "title": "Transaction Fees", "body": "By default, we deduct transaction fees from the transaction. To send the recipient 100% of the funds, [designate the account you want to debit fees from](https://docs.synapsefi.com/v3.2/docs/facilitator-fees-for-transactions).\n\nOr take an additional `fee` for yourself and designate the DEPOSIT-US node you want to send fees to." } [/block] [block:callout] { "type": "info", "body": "POST calls support idempotency for safely retrying requests without accidentally performing the same operation twice. For example, if a request to create a transaction fails due to a network connection error, you can retry the request with the same idempotency key to guarantee that only a single charge is created.\n\nTo perform an idempotent request, attach a unique key to any POST request made to the API via the X-SP-IDEMPOTENCY-KEY: <key> header.\n\nIdempotency keys expire after 24 hours.", "title": "Idempotent Requests" } [/block]