{"info":{"_postman_id":"dd2ff2bf-b9c2-496c-bf86-4499b9bd6fa6","name":"V-Pay Developer Documentation","description":"<html><head></head><body><h1 id=\"getting-started-with-v-pay\">👉🏻 Getting Started with V-Pay</h1>\n<p>V-Pay enables you to easily accept online payments. The API is open to merchants licensed to operate in Rwanda. This documentation outlines different API end points and required parameters to make API calls. Visit <a href=\"https://vonsung.rw\">https://vonsung.rw</a> for more details.</p>\n<ol>\n<li><strong>Send a request to pay:</strong> This API enables you to send a request to pay to a mobile money subscriber. Our servers communicate directly to MTN Mobile Money and other PSP to process your payment request.</li>\n<li><strong>Check transaction status:</strong> Once the payment is completed, we retern a JSON response containing the transaction STATUS. However, if you want to check the status of your transaction, you may do so by a single API call</li>\n</ol>\n<h2 id=\"🔖-how-to-get-merchant-account\">🔖 <strong>How to get merchant account</strong></h2>\n<p><strong>Step 1:</strong> Send an application documents to <a href=\"https://mailto:info@vonsung.co.rw\">info@vonsung.co.rw</a> and we will create a merchant account for you. Application documents include a commitment letter, business incorporation certificate, contact details of the company and representative, and ID copy of company representative.</p>\n<p><strong>Step 2:</strong> Once the merchant account is created, login to your merchant portal and generate apiKey and apiUser</p>\n<p><strong>Step 3:</strong> Explore our API documentation and start testing</p>\n<p><strong>Step 4:</strong> If you are done, switch to LIVE mode, and update test credentials with LIVE credentials</p>\n<h3 id=\"ℹ️-resources\">ℹ️ Resources</h3>\n<p><a href=\"https://pay.vonsung.rw\">V-Pay homepage</a></p>\n<p><a href=\"https://vonsung.io\">VONSUNG.IO</a></p>\n<p><strong>Note:</strong></p>\n<p>If you are using Postman to test the integration, remember to include the following in your request headers:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Variable</strong></th>\n<th><strong>Value</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Content-Type</td>\n<td>application/json</td>\n</tr>\n<tr>\n<td>Content-Length</td>\n<td></td>\n</tr>\n<tr>\n<td>Host</td>\n<td></td>\n</tr>\n</tbody>\n</table>\n</div></body></html>","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","toc":[{"content":"👉🏻 Getting Started with V-Pay","slug":"getting-started-with-v-pay"}],"owner":"11499510","collectionId":"dd2ff2bf-b9c2-496c-bf86-4499b9bd6fa6","publishedId":"2s93mBxJtF","public":true,"customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"2066ac"},"publishDate":"2023-06-01T15:46:32.000Z"},"item":[{"name":"Collection","item":[{"name":"sendRequestToPay","event":[{"listen":"test","script":{"id":"f8358c1c-6dcc-4508-a459-6ebf4b43f9c7","exec":[""],"type":"text/javascript","packages":{}}}],"id":"8b6578d6-363a-4b67-823c-526fd030ae7c","protocolProfileBehavior":{"disableBodyPruning":true,"disabledSystemHeaders":{"user-agent":true,"connection":true,"accept":true,"accept-encoding":true}},"request":{"method":"POST","header":[{"key":"apiUser","value":"VPULCA5-E1LYO-ZYLMG"},{"key":"apiKey","value":"VPKf9mCtSBr5UO8pJuGd"}],"body":{"mode":"raw","raw":"{\n    \"payer_phone\": \"0788604106\",\n    \"external_id\": \"A403344545932357785\",\n    \"payer_name\": \"Celestin\",\n    \"amount\": 100,\n    \"payer_email\": \"celestin@vonsung.co.rw\",\n    \"payee_message\": \"Test\",\n    \"send_receipt\": true\n}","options":{"raw":{"language":"json"}}},"url":"https://pay.vonsung.rw/api/mtn_vPay","description":"<p>You should always pass <code>apiUser</code> and <code>apiKey</code> as header parameters whenever you attempt to make an API call. The body barameters are passed as JSON.</p>\n<p>To get your <code>apiUser</code> and <code>apiKey</code>, login to your merchant dashboard and go to <a href=\"https://pay.vonsung.rw/merchant/settings/api\">API section</a>, then copy your API user and API key.</p>\n<p><strong>Definition of body parameters:</strong></p>\n<ul>\n<li><strong><code>payer_phone</code></strong>: also known as MSISDN is phone number where the request to pay will be sent.</li>\n<li><strong><code>external_id</code></strong>: this is the transaction ID generated from your end (your integration platform). It is mainly used for the purpose of tracking the transaction status.</li>\n<li><strong><code>payer_name</code></strong>: the name of payer being charged for a transaction.</li>\n<li><strong><code>amount</code></strong>: integer value equavalent to the amount being charged (transaction amount).</li>\n<li><strong><code>payer_email</code></strong>: the email of payer being charged for a transaction.</li>\n<li><strong><code>payee_message</code></strong>: the payee note. Example: Purchase from Smarthire</li>\n<li><strong><code>send_receipt</code></strong>: boolean value (<strong><code>true</code></strong> if you want the payer to receive V-Pay receipt, <strong><code>false</code></strong> elsewhere)</li>\n</ul>\n","urlObject":{"path":["mtn_vPay"],"host":["https://pay.vonsung.rw/api"],"query":[],"variable":[]}},"response":[{"id":"92fd76a5-8cf0-4063-af41-e6c7096fa51c","name":"sendRequestToPay","originalRequest":{"method":"POST","header":[{"key":"apiUser","value":"VPULCA5-E1LYO-ZYLMG","type":"text"},{"key":"apiKey","value":"VPKf9mCtSBr5UO8pJuGd","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"payer_phone\": \"0788604106\",\n    \"external_id\": \"A403344545935785\",\n    \"payer_name\": \"Celestin\",\n    \"amount\": 50,\n    \"payer_email\": \"celestin@vonsung.co.rw\",\n    \"payee_message\": \"Test\"\n}","options":{"raw":{"language":"json"}}},"url":"https://pay.vonsung.rw/api/mtn_vPay"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Connection","value":"Keep-Alive"},{"key":"Keep-Alive","value":"timeout=5, max=100"},{"key":"expires","value":"Thu, 19 Nov 1981 08:52:00 GMT"},{"key":"set-cookie","value":"ci_session=648he0muj0rn35uc5jeele0uo33eismv; expires=Thu, 01-Jun-2023 17:53:09 GMT; Max-Age=7200; path=/; HttpOnly; secure"},{"key":"access-control-allow-origin","value":"*"},{"key":"content-type","value":"application/json"},{"key":"access-control-allow-methods","value":"*"},{"key":"access-control-allow-headers","value":"Access-Control-Allow-Header, Content-Type, Access-Control-Allow-Methods, Authorizatipn, X-Requested-With"},{"key":"x-php-response-code","value":"200"},{"key":"cache-control","value":"no-store, no-cache, must-revalidate, post-check=0, pre-check=0"},{"key":"pragma","value":"no-cache"},{"key":"content-length","value":"148"},{"key":"content-encoding","value":"br"},{"key":"vary","value":"Accept-Encoding,User-Agent"},{"key":"date","value":"Thu, 01 Jun 2023 15:53:09 GMT"},{"key":"server","value":"LiteSpeed"},{"key":"alt-svc","value":"h3=\":443\"; ma=2592000, h3-29=\":443\"; ma=2592000, h3-Q050=\":443\"; ma=2592000, h3-Q046=\":443\"; ma=2592000, h3-Q043=\":443\"; ma=2592000, quic=\":443\"; ma=2592000; v=\"43,46\""}],"cookie":[],"responseTime":null,"body":"{\n    \"payer_name\": \"Celestin\",\n    \"payer_phone\": \"250788604106\",\n    \"merchant\": \"VONSUNG LLC\",\n    \"external_id\": \"A403344545935785\",\n    \"transaction_id\": \"VT22\",\n    \"amount\": 50,\n    \"currency\": \"rwf\",\n    \"status\": \"SUCCESSFUL\"\n}"}],"_postman_id":"8b6578d6-363a-4b67-823c-526fd030ae7c"},{"name":"getStatusByTransactionId","event":[{"listen":"test","script":{"id":"04fdec7d-f7b5-4b5d-b36f-3668f2c1424f","exec":["// Describe the expected response shape with JSON Schema","// https://json-schema.org/","const expectedSchema = {","  \"type\": \"object\",","  \"properties\": {","    \"data\": {","      \"type\": \"array\",","      \"items\": {","        \"type\": \"object\",","        \"properties\": {","          \"title\": {","            \"type\": \"string\"","          },","          \"author\": {","            \"type\": \"string\"","          },","          \"published\": {","            \"type\": \"integer\"","          }","        },","        \"required\": [","          \"title\",","          \"author\",","          \"published\"","        ]","      }","    }","  }","};","","// Test that the response matches the expected schema using built-in schema verification","pm.test('response matches JSON schema', () => {","    pm.response.to.have.jsonSchema(expectedSchema);","});"],"type":"text/javascript","packages":{}}}],"id":"9c0667fb-5507-4aa7-a147-e7ffd01e8ba1","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"apiUser","value":"VPULCA5-E1LYO-ZYLMG","type":"text"},{"key":"apiKey","value":"VPKf9mCtSBr5UO8pJuGd","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"transaction_id\": \"VP59219136\"\n}","options":{"raw":{"language":"json"}}},"url":"https://pay.vonsung.rw/api/status","description":"<p>This request enables you to check the status of a transaction placed with V-Pay using the transaction ID (assigned by V-Pay).</p>\n","urlObject":{"path":["status"],"host":["https://pay.vonsung.rw/api"],"query":[],"variable":[]}},"response":[{"id":"60f7a8e7-1513-48fe-8962-f4f81b6ca101","name":"getStatusByTransactionId","originalRequest":{"method":"GET","header":[{"key":"apiUser","value":"VPULCA5-E1LYO-ZYLMG","type":"text"},{"key":"apiKey","value":"VPKf9mCtSBr5UO8pJuGd","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"transaction_id\": \"VT20\"\n}","options":{"raw":{"language":"json"}}},"url":"https://pay.vonsung.rw/api/status"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Connection","value":"Keep-Alive"},{"key":"Keep-Alive","value":"timeout=5, max=100"},{"key":"expires","value":"Thu, 19 Nov 1981 08:52:00 GMT"},{"key":"access-control-allow-origin","value":"*"},{"key":"content-type","value":"application/json"},{"key":"access-control-allow-methods","value":"*"},{"key":"access-control-allow-headers","value":"Access-Control-Allow-Header, Content-Type, Access-Control-Allow-Methods, Authorizatipn, X-Requested-With"},{"key":"x-php-response-code","value":"200"},{"key":"cache-control","value":"no-store, no-cache, must-revalidate, post-check=0, pre-check=0"},{"key":"pragma","value":"no-cache"},{"key":"content-length","value":"178"},{"key":"content-encoding","value":"br"},{"key":"vary","value":"Accept-Encoding,User-Agent"},{"key":"date","value":"Thu, 01 Jun 2023 15:14:56 GMT"},{"key":"server","value":"LiteSpeed"},{"key":"alt-svc","value":"h3=\":443\"; ma=2592000, h3-29=\":443\"; ma=2592000, h3-Q050=\":443\"; ma=2592000, h3-Q046=\":443\"; ma=2592000, h3-Q043=\":443\"; ma=2592000, quic=\":443\"; ma=2592000; v=\"43,46\""}],"cookie":[],"responseTime":null,"body":"{\n    \"transaction_id\": \"VT20\",\n    \"external_id\": \"A403344535785\",\n    \"payer_name\": \"Celestin\",\n    \"payer_phone\": \"250788604106\",\n    \"transaction_date\": \"2023-06-01 03:04:11 pm\",\n    \"payment_method\": \"mtnrw\",\n    \"mode\": \"test\",\n    \"currency\": \"RWF\",\n    \"amount\": 50,\n    \"status\": \"SUCCESSFUL\"\n}"}],"_postman_id":"9c0667fb-5507-4aa7-a147-e7ffd01e8ba1"},{"name":"getStatusByExternalTransactionId","event":[{"listen":"test","script":{"id":"7aa2767a-3295-4b25-a18e-8f92ca8168a5","exec":["// Describe the expected response shape with JSON Schema","// https://json-schema.org/","const expectedSchema = {","  \"type\": \"object\",","  \"properties\": {","    \"data\": {","      \"type\": \"array\",","      \"items\": {","        \"type\": \"object\",","        \"properties\": {","          \"title\": {","            \"type\": \"string\"","          },","          \"author\": {","            \"type\": \"string\"","          },","          \"published\": {","            \"type\": \"integer\"","          }","        },","        \"required\": [","          \"title\",","          \"author\",","          \"published\"","        ]","      }","    }","  }","};","","// Test that the response matches the expected schema using built-in schema verification","pm.test('response matches JSON schema', () => {","    pm.response.to.have.jsonSchema(expectedSchema);","});"],"type":"text/javascript","packages":{}}}],"id":"a6de3014-8cc0-4238-b328-14afcc7aa4f7","protocolProfileBehavior":{"disabledSystemHeaders":{"user-agent":true,"accept":true,"accept-encoding":true,"connection":true},"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"apiUser","value":"VPULCA5-E1LYO-ZYLMG","type":"text"},{"key":"apiKey","value":"VPKf9mCtSBr5UO8pJuGd","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"external_id\": \"VF3611095424\"\n}","options":{"raw":{"language":"json"}}},"url":"https://pay.vonsung.rw/api/status","description":"<p>Alternatively, you can check the transaction status using the external transaction ID which you passed as <code>external_id</code> when sending a request to pay.</p>\n","urlObject":{"path":["status"],"host":["https://pay.vonsung.rw/api"],"query":[],"variable":[]}},"response":[{"id":"96166f24-d781-4815-bd4d-06d5ae794075","name":"getStatusByExternalTransactionId","originalRequest":{"method":"GET","header":[{"key":"apiUser","value":"VPULCA5-E1LYO-ZYLMG","type":"text"},{"key":"apiKey","value":"VPKf9mCtSBr5UO8pJuGd","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"external_id\": \"A403344535785\"\n}","options":{"raw":{"language":"json"}}},"url":"https://pay.vonsung.rw/api/status"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Connection","value":"Keep-Alive"},{"key":"Keep-Alive","value":"timeout=5, max=100"},{"key":"expires","value":"Thu, 19 Nov 1981 08:52:00 GMT"},{"key":"access-control-allow-origin","value":"*"},{"key":"content-type","value":"application/json"},{"key":"access-control-allow-methods","value":"*"},{"key":"access-control-allow-headers","value":"Access-Control-Allow-Header, Content-Type, Access-Control-Allow-Methods, Authorizatipn, X-Requested-With"},{"key":"x-php-response-code","value":"200"},{"key":"cache-control","value":"no-store, no-cache, must-revalidate, post-check=0, pre-check=0"},{"key":"pragma","value":"no-cache"},{"key":"content-length","value":"178"},{"key":"content-encoding","value":"br"},{"key":"vary","value":"Accept-Encoding,User-Agent"},{"key":"date","value":"Thu, 01 Jun 2023 15:14:22 GMT"},{"key":"server","value":"LiteSpeed"},{"key":"alt-svc","value":"h3=\":443\"; ma=2592000, h3-29=\":443\"; ma=2592000, h3-Q050=\":443\"; ma=2592000, h3-Q046=\":443\"; ma=2592000, h3-Q043=\":443\"; ma=2592000, quic=\":443\"; ma=2592000; v=\"43,46\""}],"cookie":[],"responseTime":null,"body":"{\n    \"transaction_id\": \"VT20\",\n    \"external_id\": \"A403344535785\",\n    \"payer_name\": \"Celestin\",\n    \"payer_phone\": \"250788604106\",\n    \"transaction_date\": \"2023-06-01 03:04:11 pm\",\n    \"payment_method\": \"mtnrw\",\n    \"mode\": \"test\",\n    \"currency\": \"RWF\",\n    \"amount\": 50,\n    \"status\": \"SUCCESSFUL\"\n}"}],"_postman_id":"a6de3014-8cc0-4238-b328-14afcc7aa4f7"},{"name":"pay","id":"8e162b58-8083-47a2-8ba1-c705baa4a438","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"apiUser","value":"VPULCA5-E1LYO-ZYLMG"},{"key":"apiKey","value":"VPKf9mCtSBr5UO8pJuGd"}],"body":{"mode":"raw","raw":"{\n    \"payer_phone\": \"0788604106\",\n    \"external_id\": \"A4031445453257785\",\n    \"payer_name\": \"Celestin\",\n    \"currency\": \"RWF\",\n    \"amount\": 100,\n    \"payer_email\": \"celestin@vonsung.co.rw\",\n    \"payee_message\": \"Top up\",\n    \"response_type\": \"link\",\n    \"redirect_url\": \"\",\n    \"send_receipt\": true\n}","options":{"raw":{"language":"json"}}},"url":"https://pay.vonsung.rw/api/pay","description":"<h1 id=\"pay-with-our-hosted-checkout-page-mtn-mobile-money-and-bank-card\">Pay with our hosted checkout page (MTN Mobile Money and Bank Card)</h1>\n<p>This API enables integration with VONSUNG's secure checkout page, allowing you to process payments via MTN Mobile Money and card-based payments. This guide outlines the steps to send a POST request to the V-Pay API and handle the JSON response.</p>\n<h2 id=\"endpoint\">Endpoint</h2>\n<p><strong>URL:</strong> <code>https://pay.vonsung.rw/api/pay</code></p>\n<h2 id=\"request-structure\">Request Structure</h2>\n<p>To integrate with the VONSUNG-hosted checkout page, send a POST request to the endpoint with the required parameters in both the request headers and body.</p>\n<h3 id=\"http-method\">HTTP Method</h3>\n<p><code>POST</code></p>\n<h3 id=\"headers\">Headers</h3>\n<ul>\n<li><code>Content-Type</code>: <code>application/json</code></li>\n<li><code>Authorization</code>: <code>Bearer YOUR_ACCESS_TOKEN</code></li>\n</ul>\n<h3 id=\"request-body-parameters\">Request Body Parameters</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Type</th>\n<th>Description</th>\n<th>Required</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>amount</code></td>\n<td>number</td>\n<td>The amount to be charged</td>\n<td>Yes</td>\n</tr>\n<tr>\n<td><code>currency</code></td>\n<td>string</td>\n<td>The currency code (e.g., \"RWF\", \"USD\")</td>\n<td>Yes</td>\n</tr>\n<tr>\n<td><code>description</code></td>\n<td>string</td>\n<td>Description of the transaction</td>\n<td>Yes</td>\n</tr>\n<tr>\n<td><code>callback_url</code></td>\n<td>string</td>\n<td>URL to which the response will be sent</td>\n<td>Yes</td>\n</tr>\n<tr>\n<td><code>return_url</code></td>\n<td>string</td>\n<td>URL to which the user will be redirected after payment</td>\n<td>Yes</td>\n</tr>\n<tr>\n<td><code>external_id</code></td>\n<td>string</td>\n<td>Unique identifier for the transaction</td>\n<td>Yes</td>\n</tr>\n<tr>\n<td><code>payment_method</code></td>\n<td>string</td>\n<td>Payment method to be used (e.g., \"MTN\", \"Card\")</td>\n<td>Yes</td>\n</tr>\n<tr>\n<td><code>send_receipt</code></td>\n<td>bolean</td>\n<td>Specify whether you want V-Pay to send customer receipt upon transaction completion</td>\n<td>No</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["pay"],"host":["https://pay.vonsung.rw/api"],"query":[],"variable":[]}},"response":[{"id":"f96ab7a4-e9a9-4f5f-ae90-c0575e7679bd","name":"pay","originalRequest":{"method":"GET","header":[{"key":"apiUser","value":"VPULCA5-E1LYO-ZYLMG"},{"key":"apiKey","value":"VPKf9mCtSBr5UO8pJuGd"}],"body":{"mode":"raw","raw":"{\n    \"payer_phone\": \"0788604106\",\n    \"external_id\": \"A4033443745932357785\",\n    \"payer_name\": \"Celestin\",\n    \"currency\": \"USD\",\n    \"amount\": 10,\n    \"payer_email\": \"celestin@vonsung.co.rw\",\n    \"payee_message\": \"Test\",\n    \"send_receipt\": true\n}","options":{"raw":{"language":"json"}}},"url":"https://pay.vonsung.rw/api/pay"},"status":"OK","code":200,"_postman_previewlanguage":"html","header":[{"key":"Connection","value":"Keep-Alive"},{"key":"Keep-Alive","value":"timeout=5, max=100"},{"key":"expires","value":"Thu, 19 Nov 1981 08:52:00 GMT"},{"key":"cache-control","value":"no-store, no-cache, must-revalidate, post-check=0, pre-check=0"},{"key":"pragma","value":"no-cache"},{"key":"content-type","value":"text/html; charset=UTF-8"},{"key":"content-length","value":"81"},{"key":"content-encoding","value":"br"},{"key":"vary","value":"Accept-Encoding,User-Agent"},{"key":"date","value":"Wed, 22 May 2024 21:50:37 GMT"},{"key":"server","value":"LiteSpeed"}],"cookie":[],"responseTime":null,"body":"Open https://pay.vonsung.rw/checkout/1953295d845ff7e80593e24b90236f07ed92039c in your browser (the browser auto-redirects to the checkout page)"}],"_postman_id":"8e162b58-8083-47a2-8ba1-c705baa4a438"}],"id":"93ca2897-9cc6-4117-86a5-c6a8a3ffc549","_postman_id":"93ca2897-9cc6-4117-86a5-c6a8a3ffc549","description":""},{"name":"Disbursement","item":[{"name":"generateToken","id":"dc07004b-dfcb-405d-b25b-b67e0af513fc","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":""}]},"isInherited":false},"method":"GET","header":[{"key":"apiUser","value":"VPULCA5-E1LYO-ZYLMG","type":"text"},{"key":"apiKey","value":"VPKf9mCtSBr5UO8pJuGd","type":"text"}],"url":"https://pay.vonsung.rw/api/disbursement/token","urlObject":{"path":["disbursement","token"],"host":["https://pay.vonsung.rw/api"],"query":[],"variable":[]}},"response":[{"id":"549f5557-c564-4e3c-968f-1f6cd06c70f0","name":"generateToken","originalRequest":{"method":"GET","header":[{"key":"apiUser","value":"VPULCA5-E1LYO-ZYLMG","type":"text"},{"key":"apiKey","value":"VPKf9mCtSBr5UO8pJuGd","type":"text"}],"url":"https://pay.vonsung.rw/api/disbursement/token"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Connection","value":"Keep-Alive"},{"key":"Keep-Alive","value":"timeout=5, max=100"},{"key":"expires","value":"Thu, 19 Nov 1981 08:52:00 GMT"},{"key":"access-control-allow-origin","value":"*"},{"key":"content-type","value":"application/json"},{"key":"access-control-allow-methods","value":"*"},{"key":"access-control-allow-headers","value":"Access-Control-Allow-Header, Content-Type, Access-Control-Allow-Methods, Authorizatipn, X-Requested-With"},{"key":"x-php-response-code","value":"200"},{"key":"cache-control","value":"no-store, no-cache, must-revalidate, post-check=0, pre-check=0"},{"key":"pragma","value":"no-cache"},{"key":"content-length","value":"398"},{"key":"content-encoding","value":"br"},{"key":"vary","value":"Accept-Encoding,User-Agent"},{"key":"date","value":"Wed, 11 Oct 2023 15:02:53 GMT"},{"key":"server","value":"LiteSpeed"},{"key":"alt-svc","value":"h3=\":443\"; ma=2592000, h3-29=\":443\"; ma=2592000, h3-Q050=\":443\"; ma=2592000, h3-Q046=\":443\"; ma=2592000, h3-Q043=\":443\"; ma=2592000, quic=\":443\"; ma=2592000; v=\"43,46\""}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"SUCCESSFUL\",\n    \"access_token\": \"vpay_f825c52cce799ee94536a4a1af8daac3a36af847372832e1a686cb3def271f0d1e96fa31bfa124902de8b5383650f29470b0aa5fa2b738d57a1c6a1cfefc4c1005a9e99b72d4ed9eb82028d8d36f8762bb73779fa042d2f7cc94d3222392ea1f9b0f39e63761d600f8160a0b2f9f04bb27b76d5cc5a6654241f7dec892376707272da21478c6e55ecb1219138cd2dedd19c57d123ca39ce3fb4a4e835c03399ec19a34ff25cf0ad5f8ef83a2c25fdda9487ca829c75f6e1eca09b18635492485ab3fe5e2833957b6f22b7a4f055f4300ab485ebf3657de9630bca28e3beb22d6dc82818cecbfbc9a5c95b8755c5c1c5380e32a9055d569fc3f4ad59450424afaeecf9d1ac568ccbabb56ccaabe63142000e30a9dbdcaaa4e4a\",\n    \"type\": \"production\",\n    \"expires\": \"30 mins\"\n}"}],"_postman_id":"dc07004b-dfcb-405d-b25b-b67e0af513fc"},{"name":"createBeneficiary","id":"54a6518b-e493-49d8-93b9-8005c958602e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"POST","header":[{"key":"apiUser","value":"VPULCA5-E1LYO-ZYLMG","type":"text"},{"key":"apiKey","value":"VPKf9mCtSBr5UO8pJuGd","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"recipient_phone\": \"0788604106\"\n}","options":{"raw":{"language":"json"}}},"url":"https://pay.vonsung.rw/api/disbursement/beneficiary","urlObject":{"path":["disbursement","beneficiary"],"host":["https://pay.vonsung.rw/api"],"query":[],"variable":[]}},"response":[{"id":"8aa9f0c5-d69c-404e-8cb4-9d6353220829","name":"createBeneficiary","originalRequest":{"method":"POST","header":[{"key":"apiUser","value":"VPULCA5-E1LYO-ZYLMG","type":"text"},{"key":"apiKey","value":"VPKf9mCtSBr5UO8pJuGd","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"recipient_phone\": \"788604106\"\n}","options":{"raw":{"language":"json"}}},"url":"https://pay.vonsung.rw/api/disbursement/beneficiary"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Connection","value":"Keep-Alive"},{"key":"Keep-Alive","value":"timeout=5, max=100"},{"key":"expires","value":"Thu, 19 Nov 1981 08:52:00 GMT"},{"key":"access-control-allow-origin","value":"*"},{"key":"content-type","value":"application/json"},{"key":"access-control-allow-methods","value":"*"},{"key":"access-control-allow-headers","value":"Access-Control-Allow-Header, Content-Type, Access-Control-Allow-Methods, Authorizatipn, X-Requested-With"},{"key":"x-php-response-code","value":"200"},{"key":"cache-control","value":"no-store, no-cache, must-revalidate, post-check=0, pre-check=0"},{"key":"pragma","value":"no-cache"},{"key":"content-length","value":"79"},{"key":"content-encoding","value":"br"},{"key":"vary","value":"Accept-Encoding,User-Agent"},{"key":"date","value":"Wed, 11 Oct 2023 15:03:45 GMT"},{"key":"server","value":"LiteSpeed"},{"key":"alt-svc","value":"h3=\":443\"; ma=2592000, h3-29=\":443\"; ma=2592000, h3-Q050=\":443\"; ma=2592000, h3-Q046=\":443\"; ma=2592000, h3-Q043=\":443\"; ma=2592000, quic=\":443\"; ma=2592000; v=\"43,46\""}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"SUCCESSFUL\",\n    \"message\": \"Recipient created\",\n    \"recipient_id\": \"VP1688211100303421\"\n}"}],"_postman_id":"54a6518b-e493-49d8-93b9-8005c958602e"},{"name":"transfer","id":"8e1a8dce-2f55-49ec-abe8-4e887606f8ab","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"<token>"}]},"isInherited":false},"method":"POST","header":[{"key":"apiUser","value":"VPULCA5-E1LYO-ZYLMG","type":"text"},{"key":"apiKey","value":"VPKf9mCtSBr5UO8pJuGd","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"recipient_id\": \"VP1688211100303421\",\n    \"amount\": 5000\n}","options":{"raw":{"language":"json"}}},"url":"https://pay.vonsung.rw/api/disbursement/send","urlObject":{"path":["disbursement","send"],"host":["https://pay.vonsung.rw/api"],"query":[],"variable":[]}},"response":[{"id":"658da999-246d-4b0d-a06a-d25b7f8a2960","name":"transfer","originalRequest":{"method":"POST","header":[{"key":"apiUser","value":"VPULCA5-E1LYO-ZYLMG","type":"text"},{"key":"apiKey","value":"VPKf9mCtSBr5UO8pJuGd","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"recipient_id\": \"VP1688211100303421\",\n    \"amount\": 5000\n}","options":{"raw":{"language":"json"}}},"url":"https://pay.vonsung.rw/api/disbursement/send"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Connection","value":"Keep-Alive"},{"key":"Keep-Alive","value":"timeout=5, max=100"},{"key":"expires","value":"Thu, 19 Nov 1981 08:52:00 GMT"},{"key":"access-control-allow-origin","value":"*"},{"key":"content-type","value":"application/json"},{"key":"access-control-allow-methods","value":"*"},{"key":"access-control-allow-headers","value":"Access-Control-Allow-Header, Content-Type, Access-Control-Allow-Methods, Authorizatipn, X-Requested-With"},{"key":"x-php-response-code","value":"200"},{"key":"cache-control","value":"no-store, no-cache, must-revalidate, post-check=0, pre-check=0"},{"key":"pragma","value":"no-cache"},{"key":"content-length","value":"121"},{"key":"content-encoding","value":"br"},{"key":"vary","value":"Accept-Encoding,User-Agent"},{"key":"date","value":"Wed, 11 Oct 2023 15:05:26 GMT"},{"key":"server","value":"LiteSpeed"}],"cookie":[],"responseTime":null,"body":"{\n    \"amount\": \"5000\",\n    \"status\": \"SUCCESSFUL\",\n    \"currency\": \"RWF\",\n    \"transfer_fee\": \"500\",\n    \"transaction_id\": \"VP32085683\",\n    \"payee_message\": \"Transfer of RWF5,000.0\"\n}"}],"_postman_id":"8e1a8dce-2f55-49ec-abe8-4e887606f8ab"}],"id":"f8082d45-aa98-471f-87ee-92286900a1fc","description":"<h2 id=\"overview\">Overview</h2>\n<p>The disbursement API enables you transfer funds from your V-Pay account without logging in to your Merchant Account. The use cases include when you are developing an app that requires the users to initiate the disbursement/transfer request such as claiming rewards and bonuses.</p>\n<p>The disbursment process follow a series of quiet simple processes:</p>\n<ol>\n<li><code>(GET) generateToken:</code> this step involves generating a security token which is used for authentication in further processes. The dusbursement token is valid for only 30 min. The endpoint for generating token is <code>disbursement/token</code> and the request requires <code>apiUser</code> and <code>apiKey</code> to be passed from headers.</li>\n<li><code>(POST) createBeneficiary:</code> a recipient should first be added to the recipients list before initiating the transfer. This API is used to accomplish such function and this API uses <code>Bearer Token</code> for authorization. A <code>recipient_id</code> is returned on a successful request, and this ID is used to process the transfer.</li>\n<li><code>(POST) transfer:</code> this is the last step of the process. All you do is passing the recipient_id in body request, <code>apiUser</code> and <code>apikey</code> in headers, and athorize the transfer with the <code>Bearer Token</code>.</li>\n</ol>\n","_postman_id":"f8082d45-aa98-471f-87ee-92286900a1fc"},{"name":"Currency Exchange","item":[{"name":"currencyExchange","id":"534eccd9-d0d3-4572-a20e-dcc02507ead5","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"apiUser","value":"VPULCA5-E1LYO-ZYLMG"},{"key":"apiKey","value":"VPKf9mCtSBr5UO8pJuGd"}],"body":{"mode":"raw","raw":"{\n    \"from\": \"USD\",\n    \"to\": \"RWF\",\n    \"amount\": 100\n}","options":{"raw":{"language":"json"}}},"url":"https://pay.vonsung.rw/api/exchange","urlObject":{"path":["exchange"],"host":["https://pay.vonsung.rw/api"],"query":[],"variable":[]}},"response":[{"id":"e5d0b7d9-614f-4ef6-a00a-7d4e50c744fa","name":"currencyExchange","originalRequest":{"method":"GET","header":[{"key":"apiUser","value":"VPULCA5-E1LYO-ZYLMG"},{"key":"apiKey","value":"VPKf9mCtSBr5UO8pJuGd"}],"body":{"mode":"raw","raw":"{\n    \"from\": \"USD\",\n    \"to\": \"RWF\",\n    \"amount\": 100\n}","options":{"raw":{"language":"json"}}},"url":"https://pay.vonsung.rw/api/exchange"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Connection","value":"Keep-Alive"},{"key":"Keep-Alive","value":"timeout=5, max=100"},{"key":"expires","value":"Thu, 19 Nov 1981 08:52:00 GMT"},{"key":"set-cookie","value":"ci_session=7qfuoiggqrafaqh4g66vuup7c6ajbtdo; expires=Thu, 23-May-2024 00:26:44 GMT; Max-Age=7200; path=/; HttpOnly; secure"},{"key":"access-control-allow-origin","value":"*"},{"key":"content-type","value":"application/json"},{"key":"access-control-allow-methods","value":"*"},{"key":"access-control-allow-headers","value":"Access-Control-Allow-Header, Content-Type, Access-Control-Allow-Methods, Authorization, X-Requested-With"},{"key":"x-php-response-code","value":"200"},{"key":"cache-control","value":"no-store, no-cache, must-revalidate, post-check=0, pre-check=0"},{"key":"pragma","value":"no-cache"},{"key":"content-length","value":"87"},{"key":"content-encoding","value":"br"},{"key":"vary","value":"Accept-Encoding,User-Agent"},{"key":"date","value":"Wed, 22 May 2024 22:26:44 GMT"},{"key":"server","value":"LiteSpeed"},{"key":"alt-svc","value":"h3=\":443\"; ma=2592000, h3-29=\":443\"; ma=2592000, h3-Q050=\":443\"; ma=2592000, h3-Q046=\":443\"; ma=2592000, h3-Q043=\":443\"; ma=2592000, quic=\":443\"; ma=2592000; v=\"43,46\""}],"cookie":[],"responseTime":null,"body":"{\n    \"from_currency\": \"USD\",\n    \"to_currency\": \"RWF\",\n    \"input_amount\": 100,\n    \"result\": 128786.981,\n    \"status\": \"SUCCESSFUL\"\n}"}],"_postman_id":"534eccd9-d0d3-4572-a20e-dcc02507ead5"}],"id":"6ededd16-233e-4f57-9b8d-aac6bb5324c6","description":"<p>The Exchange Rate API allows you to convert a specified amount from one currency to another. This guide outlines the steps to send a POST request to the Exchange Rate API and handle the JSON response.</p>\n<h2 id=\"endpoint\">Endpoint</h2>\n<p><strong>URL:</strong> <code>https://pay.vonsung.rw/api/exchange</code></p>\n<h2 id=\"request-structure\">Request Structure</h2>\n<p>To use the Exchange Rate API, send a POST request to the endpoint with the required headers and a JSON body.</p>\n<h3 id=\"http-method\">HTTP Method</h3>\n<p><code>POST</code></p>\n<h3 id=\"headers\">Headers</h3>\n<ul>\n<li><p><code>Content-Type</code>: <code>application/json</code></p>\n</li>\n<li><p><code>apiUser</code>: <code>YOUR_API_USER</code></p>\n</li>\n<li><p><code>apiKey</code>: <code>YOUR_API_KEY</code></p>\n</li>\n</ul>\n<h3 id=\"request-body-parameters\">Request Body Parameters</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Type</th>\n<th>Description</th>\n<th>Required</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>from</code></td>\n<td>string</td>\n<td>The source currency code (e.g., \"USD\")</td>\n<td>Yes</td>\n</tr>\n<tr>\n<td><code>to</code></td>\n<td>string</td>\n<td>The target currency code (e.g., \"RWF\")</td>\n<td>Yes</td>\n</tr>\n<tr>\n<td><code>amount</code></td>\n<td>number</td>\n<td>The amount to be converted</td>\n<td>Yes</td>\n</tr>\n</tbody>\n</table>\n</div>","_postman_id":"6ededd16-233e-4f57-9b8d-aac6bb5324c6"}],"event":[{"listen":"prerequest","script":{"id":"9114e557-1cc4-4e5d-9689-fd965a389eff","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"1997d27f-25ea-4ba8-a022-66e76439dd3c","type":"text/javascript","exec":[""]}}],"variable":[{"key":"baseUrl","value":"https://pay.vonsung.rw/api"},{"key":"apiUser","value":"VPULCA5-E1LYO-ZYLMG","type":"string"},{"key":"apiKey","value":"VPKf9mCtSBr5UO8pJuGd","type":"string"},{"key":"baseUrlTest","value":"http://localhost:8888/vpay/api"},{"key":"token","value":"vpay_ed1ddba919fd9fa975cee5d21dea12338d1d4c1edb284bbe80abff7ee3043b520f07806ff5f697a3d1189fb0c4444d8d16d4f5bd5929fe454c5632c1d106c6a4d14c924072fbcded110aa300b70c78cc024a643b54cd66ada6327e1af73c016b4cfccecc1839cc0b33cd74112a724d103a79678d187899f75af4321bb1f39f73472d828e660c991ce2a4198120badda43fa1756c44b30b4f8cc9481e2f6b481f67350450cb5947deb3006c1873773381326103807c12f97c81a9bae9454060eceb98e50a0c0cea297dc578e3e03a95056e775a2e3da3aaa797b1ba28ab9bff9cfacf87b575a5894055f60044ac9947afa7d3b8b8fd7e454c8d4f84ce491c94d25a83522aa8073bb1a3c1a397f22920c640f9b80ea6fce8448e"}]}