{"info":{"_postman_id":"61614681-baf1-4874-93b7-9ba33e4e7226","name":"Paybomb API Documentation","description":"<html><head></head><body><h1 id=\"overview\">Overview</h1>\n<hr>\n<p>Paybomb is a payment gateway optimization and intelligence service that merchants can use to provide a remote and frictionless payment experience.</p>\n<p>This documentation will help you get started with integrating Paybomb but if you have any questions, please do not hesitate to reach out to us via email at <a href=\"https://\">info@paybomb.tech</a></p>\n<p>Please be advised that our support team is only available during standard business hours.</p>\n<h1 id=\"environments\">Environments</h1>\n<hr>\n<p>These are the BaseUrls for the APIs on different environments:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Environment</strong></th>\n<th><strong>Base URL</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Production</td>\n<td><a href=\"https://\">https://app.paybomb.tech/api/v1</a></td>\n</tr>\n<tr>\n<td>Sandbox</td>\n<td><a href=\"https://\">https://app.paybomb.tech/api/v1</a>  <br><code>Note: set the Sandbox flag true (checked) in your merchant account. As shown in the image below</code></td>\n</tr>\n</tbody>\n</table>\n</div><h1 id=\"authentication\">Authentication</h1>\n<hr>\n<p>To access the API, you must acquire your unique API key from the merchant dashboard -&gt; API Keys section in your account. Make sure to use this key as a <strong>bearer token</strong> in the Authorization header for every request you send.</p>\n<p><code>AUTHORIZATION: Bearer Token</code></p>\n<p><code>Token: {{APIKey}} .</code></p>\n<p>Access your sandbox API key credentials by navigating to your merchant login and checking the 'is sandbox' option, located in the top right corner under merchant profile.</p>\n<img src=\"https://content.pstmn.io/1d8bffc7-9dc9-4b52-ad8b-8a6f3d1337b4/VW50aXRsZWQgZGVzaWduICgzMikucG5n\">\n\n<p>To get to the live API key, uncheck the <strong>'Is Sandbox'</strong> option in the top right corner of your merchant dashboard. After unchecking, the page will refresh, and you can generate an API key for live transactions in this environment.\"</p>\n<img src=\"https://content.pstmn.io/2e86b672-4be6-4b0a-b094-fbae89941def/VW50aXRsZWQgZGVzaWduICgzOCkucG5n\">\n\n<p>Reiterating, the API keys in Sandbox mode are for testing (when 'is sandbox' is CHECKED in the top right corner under merchant profile). The live API key credentials are for processing actual card transactions in Live mode (when 'is sandbox' is UNCHECKED in the same location)</p>\n<h1 id=\"request-headers\">Request Headers</h1>\n<hr>\n<p>Use these headers on every API call unless noted.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Header</th>\n<th>Value</th>\n<th>Required</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>Content-Type</code></td>\n<td><code>application/json</code></td>\n<td>Yes</td>\n<td>All endpoints. Send JSON payloads.</td>\n</tr>\n<tr>\n<td><code>Authorization</code></td>\n<td><code>Bearer {MERCHANT_API_KEY}</code></td>\n<td>Yes</td>\n<td>All endpoints.  <br>Replace with your merchant API key.</td>\n</tr>\n<tr>\n<td><code>BrandId</code></td>\n<td><code>{YOUR_BRAND_ID}</code></td>\n<td>Conditional</td>\n<td><strong>Session</strong> and <strong>Customer</strong>APIs.  <br>optional in customer APIs but Mandatory in Session APIs</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":"Overview","slug":"overview"},{"content":"Environments","slug":"environments"},{"content":"Authentication","slug":"authentication"},{"content":"Request Headers","slug":"request-headers"}],"owner":"54431596","collectionId":"61614681-baf1-4874-93b7-9ba33e4e7226","publishedId":"2sBXqKq15h","public":true,"customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"FF6C37"},"publishDate":"2026-05-04T13:25:58.000Z"},"item":[{"name":"⚙️ Integration Steps","item":[],"id":"333f2379-db80-48dc-9bb4-898f7469d4ba","description":"<p>To start integrating you should already have your Merchant access to our admin portal and sandbox credentials which you will need to complete the integration.</p>\n<h1 id=\"1-setup--check-merchant-details\">1. Setup &amp; check merchant details</h1>\n<p>The first step in getting your integration ready is to check whether all the details about you as a merchant are correct on our Merchant portal. If you detect anomalies, then please contact your Account Manager.</p>\n<p>Start with sandbox mode (see top right-hand corner on your merchant portal to toggle between modes) and generate API Key, Brand ID and Public Key and also set up the callback URLs for subscribing to webhooks.</p>\n<ol>\n<li><p><strong>API Key</strong> - necessary to send transactions via API</p>\n</li>\n<li><p><strong>Brand ID</strong> - needed to send transaction. Use different brand IDs for different shops or brands.</p>\n</li>\n<li><p><strong>Public Key -</strong> needed to signature verification received in headers of the webhook</p>\n</li>\n<li><p><strong>Webhook</strong> - recommended to get notifications from our server to your server to inform you of transaction status changes and notifications about transactions. You can check all the details of how our webhooks work on the Webhooks page.</p>\n</li>\n</ol>\n<h1 id=\"2-test-the-integration-in-sandbox-mode\">2. Test the integration in Sandbox Mode</h1>\n<p>After finishing your integration, make sure your code is working as intended and test the purchase flow in the staging environment.</p>\n<h3 id=\"testing-credentials-only-on-sandbox-mode\">Testing Credentials (only on Sandbox mode)</h3>\n<p>You have the opportunity to test the APIs by performing test purchases using the below test cards. We have introduced new test cards from 18th December 2025 onwards, which will have more exhaustive error messages helping you test different types of card transactions.</p>\n<p>The cards mentioned above will stop working and the below mentioned cards will be used:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>card_type</strong></th>\n<th><strong>Card Numbers</strong></th>\n<th>auth_type</th>\n<th>Behaviour</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Master</td>\n<td>5141922635866282</td>\n<td>3D Secure</td>\n<td>Authentication Successful</td>\n</tr>\n<tr>\n<td>Master</td>\n<td>5169811636324572</td>\n<td>3D Secure</td>\n<td>Authentication Failed</td>\n</tr>\n<tr>\n<td>Master</td>\n<td>5143312606271514</td>\n<td>2D Secure</td>\n<td>Insufficient funds</td>\n</tr>\n<tr>\n<td>Master</td>\n<td>5199805409482512</td>\n<td>2D Secure</td>\n<td>Pending execution</td>\n</tr>\n<tr>\n<td>Master</td>\n<td>5146669487735546</td>\n<td>2D Secure</td>\n<td>Incorrect card expiry</td>\n</tr>\n<tr>\n<td>Master</td>\n<td>5151735930865446</td>\n<td>3D Secure</td>\n<td>Incorrect cvv</td>\n</tr>\n<tr>\n<td>Master</td>\n<td>5185151885032695</td>\n<td>3D Secure</td>\n<td>Processor timeout</td>\n</tr>\n<tr>\n<td>Master</td>\n<td>5149446104369687</td>\n<td>2D Secure</td>\n<td>Refund failed</td>\n</tr>\n<tr>\n<td>Master</td>\n<td>5127160683722580</td>\n<td>3D Secure</td>\n<td>Transaction expired</td>\n</tr>\n<tr>\n<td>Master</td>\n<td>5159971600530380</td>\n<td>3D Secure</td>\n<td>Risk check failed</td>\n</tr>\n<tr>\n<td>Master</td>\n<td>5198134892284199</td>\n<td>2D Secure</td>\n<td>Issuer decline</td>\n</tr>\n<tr>\n<td>Master</td>\n<td>5116213113429327</td>\n<td>2D Secure</td>\n<td>Authentication successful</td>\n</tr>\n<tr>\n<td>Master</td>\n<td>5112857124909935</td>\n<td>2D Secure</td>\n<td>Authentication failed</td>\n</tr>\n<tr>\n<td>Master</td>\n<td>5156216152193051</td>\n<td>3D Secure</td>\n<td>Insufficient funds</td>\n</tr>\n<tr>\n<td>Master</td>\n<td>5170361568993009</td>\n<td>3D Secure</td>\n<td>Pending execution</td>\n</tr>\n<tr>\n<td>Master</td>\n<td>5559161923541480</td>\n<td>3D Secure</td>\n<td>Incorrect card expiry</td>\n</tr>\n<tr>\n<td>Master</td>\n<td>5110339832985475</td>\n<td>2D Secure</td>\n<td>Incorrect cvv</td>\n</tr>\n<tr>\n<td>Master</td>\n<td>5136528486494418</td>\n<td>2D Secure</td>\n<td>Processor timeout</td>\n</tr>\n<tr>\n<td>Master</td>\n<td>5162164630471008</td>\n<td>3D Secure</td>\n<td>Refund failed</td>\n</tr>\n<tr>\n<td>Master</td>\n<td>5140378358642890</td>\n<td>2D Secure</td>\n<td>Transaction expired</td>\n</tr>\n<tr>\n<td>Master</td>\n<td>5192488343990234</td>\n<td>2D Secure</td>\n<td>Risk check failed</td>\n</tr>\n<tr>\n<td>Master</td>\n<td>5115438560834809</td>\n<td>3D Secure</td>\n<td>Issuer decline</td>\n</tr>\n<tr>\n<td>VISA</td>\n<td>4079722589318630</td>\n<td>2D Secure</td>\n<td>Authentication successful</td>\n</tr>\n<tr>\n<td>VISA</td>\n<td>4878397953290146</td>\n<td>3D Secure</td>\n<td>Authentication successful</td>\n</tr>\n<tr>\n<td>VISA</td>\n<td>4125485445527190</td>\n<td>2D Secure</td>\n<td>Authentication failed</td>\n</tr>\n<tr>\n<td>VISA</td>\n<td>4984823599573265</td>\n<td>3D Secure</td>\n<td>Insufficient funds</td>\n</tr>\n<tr>\n<td>VISA</td>\n<td>4710793097358785</td>\n<td>2D Secure</td>\n<td>Pending execution</td>\n</tr>\n<tr>\n<td>VISA</td>\n<td>4500682811540204</td>\n<td>3D Secure</td>\n<td>Incorrect card expiry</td>\n</tr>\n<tr>\n<td>VISA</td>\n<td>4935648707390280</td>\n<td>2D Secure</td>\n<td>Incorrect cvv</td>\n</tr>\n<tr>\n<td>VISA</td>\n<td>4241214813524459</td>\n<td>3D Secure</td>\n<td>Refund failed</td>\n</tr>\n<tr>\n<td>VISA</td>\n<td>4342346318195134</td>\n<td>3D Secure</td>\n<td>Risk check failed</td>\n</tr>\n<tr>\n<td>VISA</td>\n<td>4618889598319798</td>\n<td>3D Secure</td>\n<td>Issuer decline</td>\n</tr>\n<tr>\n<td>VISA</td>\n<td>4195258724913240</td>\n<td>3D Secure</td>\n<td>Authentication failed</td>\n</tr>\n<tr>\n<td>VISA</td>\n<td>4662922293431520</td>\n<td>2D Secure</td>\n<td>Insufficient funds</td>\n</tr>\n<tr>\n<td>VISA</td>\n<td>4994455060632359</td>\n<td>3D Secure</td>\n<td>Pending execution</td>\n</tr>\n<tr>\n<td>VISA</td>\n<td>4460652052832634</td>\n<td>2D Secure</td>\n<td>Incorrect card expiry</td>\n</tr>\n<tr>\n<td>VISA</td>\n<td>4383025225665997</td>\n<td>3D Secure</td>\n<td>Incorrect cvv</td>\n</tr>\n<tr>\n<td>VISA</td>\n<td>4568730114361775</td>\n<td>2D Secure</td>\n<td>Processor timeout</td>\n</tr>\n<tr>\n<td>VISA</td>\n<td>4163340122068617</td>\n<td>3D Secure</td>\n<td>Processor timeout</td>\n</tr>\n<tr>\n<td>VISA</td>\n<td>4405935956954713</td>\n<td>2D Secure</td>\n<td>Refund failed</td>\n</tr>\n<tr>\n<td>VISA</td>\n<td>4945208335596614</td>\n<td>2D Secure</td>\n<td>Transaction expired</td>\n</tr>\n<tr>\n<td>VISA</td>\n<td>4566329901944380</td>\n<td>3D Secure</td>\n<td>Transaction expired</td>\n</tr>\n<tr>\n<td>VISA</td>\n<td>4588381711517694</td>\n<td>2D Secure</td>\n<td>Risk check failed</td>\n</tr>\n<tr>\n<td>VISA</td>\n<td>4401279985739470</td>\n<td>2D Secure</td>\n<td>Issuer decline</td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>Note:</strong><br />You can enter any expiry month and year which is larger or equal to the current month/year.<br />You can enter any cvv.<br />OTP will only be 123456 for 3ds cases.</p>\n<p>Currently, only card payment testing is supported in the sandbox environment. Testing Alternative Payment Methods (APMs) is not available in the sandbox at this time.</p>\n<h1 id=\"3-create-and-test-credentials-on-the-live-mode\">3. Create and test credentials on the Live Mode</h1>\n<p>After finishing your integration in sandbox mode, set up your production environment by turning off the sandbox mode from merchant dashboard and following the same steps mentioned in step one. Test the integration using small amounts to ensure everything is working.</p>\n<h1 id=\"4-go-live\">4. Go live!</h1>\n<p>Inform your Account Manager when the setup is done to get started with processing live traffic.</p>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"4b95f688-c6b0-431a-99d7-6d2fcd692b66"}},{"listen":"test","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"3040f171-35eb-45bd-ade7-efebedda0495"}}],"_postman_id":"333f2379-db80-48dc-9bb4-898f7469d4ba"},{"name":"🔌 Webhooks","item":[{"name":"PayIn","item":[],"id":"4f2ccc76-3168-4846-a558-93ada3d4a5bd","description":"<h2 id=\"overview\"><strong>Overview</strong></h2>\n<p>When a transaction status changes to a terminal state (e.g., paid, refunded, expired), our payment gateway sends a server-to-server POST callback to the merchant's configured Webhook URL.</p>\n<p>The callback includes full transaction details so the merchant can update order status in real time.</p>\n<h3 id=\"webhook-events-for-payins\"><strong>Webhook Events for Payins</strong></h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Event type</strong></th>\n<th><strong>Status</strong></th>\n<th><strong>When is the event triggered</strong></th>\n<th><strong>Is this a terminal event?</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><strong>purchase created</strong></td>\n<td><code>created</code></td>\n<td>Triggered when a new purchase request is initialized and recorded in the system.</td>\n<td>❌ No</td>\n</tr>\n<tr>\n<td><strong>payment in process</strong></td>\n<td><code>payment_in_process</code></td>\n<td>Triggered when the payment is initiated and awaiting confirmation from the PSP/bank.</td>\n<td>❌ No</td>\n</tr>\n<tr>\n<td><strong>purchase overdue</strong></td>\n<td><code>overdue</code></td>\n<td>Triggered when a purchase remains in the CREATED state and the configured <em>Transaction Overdue Hours</em> (from Admin Settings) have elapsed, the system automatically updates the purchase status to OVERDUE</td>\n<td>❌ No (may lead to failed/expired/paid later)</td>\n</tr>\n<tr>\n<td><strong>purchase paid</strong></td>\n<td><code>paid</code></td>\n<td>Triggered when the payment is successfully completed and confirmed.</td>\n<td>✅ Yes</td>\n</tr>\n<tr>\n<td><strong>purchase failed</strong></td>\n<td><code>error</code></td>\n<td>Triggered when the payment attempt fails due to technical error, insufficient funds, or rejection by PSP/bank.</td>\n<td>✅ Yes</td>\n</tr>\n<tr>\n<td><strong>purchase cancelled</strong></td>\n<td><code>cancelled</code></td>\n<td>Triggered when the customer or system cancels the purchase before completion.</td>\n<td>✅ Yes</td>\n</tr>\n<tr>\n<td><strong>purchase expired</strong></td>\n<td><code>expired</code></td>\n<td>Triggered when the purchase is not paid within the allowed expiry time.</td>\n<td>✅ Yes</td>\n</tr>\n<tr>\n<td><strong>refund in process</strong></td>\n<td><code>refund_in_process</code></td>\n<td>Triggered when a refund has been initiated but is not yet completed/settled.</td>\n<td>❌ No</td>\n</tr>\n<tr>\n<td><strong>payment refund</strong></td>\n<td><code>refunded</code> / <code>fraud_refunded</code></td>\n<td>Triggered when the completed payment is refunded, refunded due to fraud, or reversed via chargeback.</td>\n<td>✅ Yes</td>\n</tr>\n<tr>\n<td><strong>Chargeback</strong></td>\n<td><code>chargeback</code></td>\n<td>Triggered when a chargeback is applied</td>\n<td>✅ Yes</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"webhook-payload-specification\"><strong>Webhook Payload Specification</strong></h4>\n<p><strong>Fields Description</strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Key</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>message.purchaseId</td>\n<td>Unique identifier of the purchase generated by Paybomb.</td>\n</tr>\n<tr>\n<td>message.client</td>\n<td>Customer’s ID in merchant’s system (if available), otherwise \"NA\".</td>\n</tr>\n<tr>\n<td>message.client.email</td>\n<td>Customer’s email address.</td>\n</tr>\n<tr>\n<td>message.client.phone</td>\n<td>Customer’s phone number (with country code).</td>\n</tr>\n<tr>\n<td>message.client.full_name</td>\n<td>Full name of the customer.</td>\n</tr>\n<tr>\n<td>message.client.date_of_birth</td>\n<td>Customer’s date of birth in YYYY-MM-DD format.</td>\n</tr>\n<tr>\n<td>message.client.street_address</td>\n<td>Customer’s full street address.</td>\n</tr>\n<tr>\n<td>message.client.country</td>\n<td>ISO 2-letter country code of the customer.</td>\n</tr>\n<tr>\n<td>message.client.city</td>\n<td>City name (and state, if applicable).</td>\n</tr>\n<tr>\n<td>message.client.zip_code</td>\n<td>Postal / ZIP code.</td>\n</tr>\n<tr>\n<td>message.client.stateCode</td>\n<td>ISO 2-letter state code.</td>\n</tr>\n<tr>\n<td>message.updated_on</td>\n<td>UNIX timestamp of the last update to the transaction.</td>\n</tr>\n<tr>\n<td>message.type</td>\n<td>Type of transaction (e.g., \"purchase\").</td>\n</tr>\n<tr>\n<td>message.paymentMethod</td>\n<td>Comma-separated list of payment methods used (e.g., \"MASTER,VISA,JCB\").</td>\n</tr>\n<tr>\n<td>message.amountUnit</td>\n<td>Unit of amount — \"MAJOR\" for full currency unit, \"MINOR\" for subunits.</td>\n</tr>\n<tr>\n<td>message.errorMsg</td>\n<td>Message describing the transaction result — success message or error details.</td>\n</tr>\n<tr>\n<td>message.created_on</td>\n<td>UNIX timestamp when the purchase was created.</td>\n</tr>\n<tr>\n<td>message.merchantRef</td>\n<td>Unique transaction reference from the merchant.</td>\n</tr>\n<tr>\n<td>message.merchantName</td>\n<td>Registered merchant name in Paybomb.</td>\n</tr>\n<tr>\n<td>message.purchase.currency</td>\n<td>Currency code (ISO 4217).</td>\n</tr>\n<tr>\n<td>message.purchase.products</td>\n<td>Array of product details (name, quantity, price, discount, tax).</td>\n</tr>\n<tr>\n<td>message.purchase.total</td>\n<td>Total amount for all products (in amount unit).</td>\n</tr>\n<tr>\n<td>message.purchase.language</td>\n<td>Language code for the transaction (ISO 639-1).</td>\n</tr>\n<tr>\n<td>message.payment.payment_type</td>\n<td>Type of payment (e.g., \"PURCHASE\").</td>\n</tr>\n<tr>\n<td>message.payment.amount</td>\n<td>Payment amount.</td>\n</tr>\n<tr>\n<td>message.payment.currency</td>\n<td>Payment currency.</td>\n</tr>\n<tr>\n<td>message.payment.paid_on</td>\n<td>UNIX timestamp when the payment was completed.</td>\n</tr>\n<tr>\n<td>message.status</td>\n<td>Current transaction status.</td>\n</tr>\n<tr>\n<td>message.status_history</td>\n<td>Array of all past statuses with timestamps.</td>\n</tr>\n<tr>\n<td>message.reference</td>\n<td>Paybomb’s unique transaction reference.</td>\n</tr>\n<tr>\n<td>status (root-level)</td>\n<td>Duplicate of current status for quick access.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"possible-status-values\"><strong>Possible Status Values</strong></h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>status</th>\n<th>description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>error</td>\n<td>purchase failed due to an error.</td>\n</tr>\n<tr>\n<td>cancelled</td>\n<td>purchase was cancelled by the user or system.</td>\n</tr>\n<tr>\n<td>created</td>\n<td>purchase record created but not paid yet.</td>\n</tr>\n<tr>\n<td>expired</td>\n<td>payment link or session expired.</td>\n</tr>\n<tr>\n<td>overdue</td>\n<td>payment overdue.</td>\n</tr>\n<tr>\n<td>paid</td>\n<td>payment completed successfully.</td>\n</tr>\n<tr>\n<td>refunded</td>\n<td>payment refunded.</td>\n</tr>\n<tr>\n<td>fraud_refunded</td>\n<td>refunded due to fraud detection.</td>\n</tr>\n<tr>\n<td>chargeback</td>\n<td>reversed due to chargeback.</td>\n</tr>\n<tr>\n<td>payment_in_process</td>\n<td>payment is in progress.</td>\n</tr>\n<tr>\n<td>refund_in_process</td>\n<td>refund process started but not completed.</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"🔐-key-pair-generation\"><strong>🔐 Key Pair Generation</strong></h2>\n<p><strong>Paybomb uses RSA key pairs to digitally sign webhooks, ensuring all notifications are both secure and authentic.</strong></p>\n<hr />\n<p><strong>1. Generate Your Keys</strong></p>\n<img src=\"https://content.pstmn.io/6e17a656-3d35-471b-9eb3-9b4e22306c02/U2NyZWVuc2hvdCAyMDI1LTExLTE3IGF0IDguMzIuNDTigK9BTS5wbmc=\" />\n\n<ul>\n<li><p>Click “Generate Key Pair” in the dashboard.</p>\n</li>\n<li><p>A unique RSA private key and public key are created for your merchant ID.</p>\n</li>\n</ul>\n<p><strong>2. Key Storage</strong></p>\n<img src=\"https://content.pstmn.io/336ed3b4-84ad-4df2-bfbb-d59ac9427185/U2NyZWVuc2hvdCAyMDI1LTExLTE3IGF0IDguMzUuMDLigK9BTS5wbmc=\" />\n\n<ul>\n<li><p>Private Key → Stored securely by Paybomb (never exposed).</p>\n</li>\n<li><p>Public Key → Displayed to you once on the screen. Copy and save it for verifying signatures.</p>\n</li>\n</ul>\n<p><strong>3. Webhook Signing</strong></p>\n<ul>\n<li><p>Every webhook payload is signed using Paybomb’s private key.</p>\n</li>\n<li><p>The signature is included in webhook headers:</p>\n<ul>\n<li>paybomb-sign or paybomb_sign</li>\n</ul>\n</li>\n</ul>\n<p><strong>4. Verification</strong></p>\n<ul>\n<li><p>Use your public key to verify the paybomb-sign header against the webhook body.</p>\n</li>\n<li><p>This ensures the webhook came from Paybomb and was not tampered with.</p>\n</li>\n</ul>\n<h2 id=\"🔏-signature-paybomb-sign-or-paybomb_sign\"><strong>🔏 Signature: paybomb-sign (or paybomb_sign)</strong></h2>\n<p><strong>The paybomb-sign header is a Base64-encoded digital signature generated using your merchant-specific RSA private key.</strong></p>\n<hr />\n<h3 id=\"🔨-how-the-signature-is-generated\"><strong>🔨 How the Signature is Generated</strong></h3>\n<ol>\n<li>Message Construction</li>\n</ol>\n<p>Concatenate the following fields in order:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{purchaseId}|{message.status}|{brandId}\n\n</code></pre>\n<p>Example</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>1234567890|PAID|BRAND_001\n\n</code></pre><p>2. Signing Algorithm</p>\n<ul>\n<li><p>Algorithm: SHA256withRSA</p>\n</li>\n<li><p>Output: Base64-encoded signature (sent in the paybomb-sign header).</p>\n</li>\n</ul>\n<h3 id=\"✅-how-to-verify-the-signature\"><strong>✅ How to Verify the Signature</strong></h3>\n<ol>\n<li>Rebuild the Message</li>\n</ol>\n<p>From the webhook JSON body, extract:</p>\n<ul>\n<li><p>purchaseId</p>\n</li>\n<li><p>status (convert to uppercase)</p>\n</li>\n<li><p>brandId</p>\n</li>\n</ul>\n<p>Reconstruct the string in the same format:<br />{purchaseId}|{message.status}|{brandId}</p>\n<p>2. Verification Steps</p>\n<ul>\n<li><p>Use your stored public key.</p>\n</li>\n<li><p>Decode the paybomb-sign header from Base64.</p>\n</li>\n<li><p>Verify using SHA256withRSA.</p>\n</li>\n<li><p>If verification succeeds, the webhook is authentic and untampered.</p>\n</li>\n</ul>\n<hr />\n<h3 id=\"💻-java-verification-example\"><strong>💻 Java Verification Example</strong></h3>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-java\">public static boolean verifySignature(String message, String signatureBase64, PublicKey publicKey) throws Exception {\n    Signature signature = Signature.getInstance(\"SHA256withRSA\");\n    signature.initVerify(publicKey);\n    signature.update(message.getBytes());\n    byte[] signatureBytes = Base64.getDecoder().decode(signatureBase64);\n    return signature.verify(signatureBytes);\n}\n\n</code></pre>\n<ul>\n<li><p>message → The reconstructed string (purchaseId|STATUS|brandId)</p>\n</li>\n<li><p>signatureBase64 → Value from paybomb-sign header</p>\n</li>\n<li><p>publicKey → Your saved Paybomb public key</p>\n</li>\n</ul>\n<p><strong>Sample Webhook</strong>  </p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"message\": {\n    \"purchaseId\": \"6808127876673d75156df3e6\",\n    \"client\": {\n      \"customerId\": \"NA\",\n      \"email\": \"daler101@hotmail.com\",\n      \"phone\": \"+17808752869\",\n      \"full_name\": \"Dale Richardson\",\n      \"date_of_birth\": \"1800-01-01\",\n      \"street_address\": \"48 AVE , ALBERTA BEACH\",\n      \"country\": \"CA\",\n      \"city\": \"ALBERTA\",\n      \"zip_code\": \"T0E 0A0\",\n      \"shipping_street_address\": \" \",\n      \"shipping_country\": \"\",\n      \"shipping_city\": \"\",\n      \"shipping_zip_code\": \"\",\n      \"cc\": [],\n      \"bcc\": [],\n      \"stateCode\": \"AB\"\n    },\n    \"updated_on\": 1745359929,\n    \"type\": \"purchase\",\n    \"isFraud\": \"NO\",\n    \"paymentMethod\": \"INTERAC,MASTER,VISA,JCB\",\n    \"amountUnit\": \"MAJOR\",\n    \"errorMsg\": \"Transaction succeeded-APPROVED\",\n    \"detailedMsg\": \"Transaction succeeded-APPROVED\",\n    \"redirectType\": \"POST\",\n    \"force_recurring\": false,\n    \"created_on\": 1745359481,\n    \"merchantRef\": \"7235\",\n    \"merchantName\": \"firstinvestacademy\",\n    \"pspReference\": \"pKlSYNsPOdOL2FCmSAjXEOHzDDpSP5\",\n    \"bankmid\": \"waverlite\",\n    \"bankname\": \"waverlite\",\n    \"purchase\": {\n      \"currency\": \"CAD\",\n      \"products\": [\n        {\n          \"name\": \"Payment\",\n          \"quantity\": 1,\n          \"price\": 294,\n          \"discount\": 0,\n          \"tax_percent\": \"0.00\"\n        }\n      ],\n      \"total\": 294,\n      \"language\": \"en\",\n      \"notes\": \"Micro+ Plan\",\n      \"debt\": 0,\n      \"total_formatted\": 1,\n      \"expireInMin\": \"43800\",\n      \"taxAmount\": 0,\n      \"taxPercent\": 0,\n      \"request_client_details\": [],\n      \"email_message\": \"\"\n    },\n    \"payment\": {\n      \"is_outgoing\": false,\n      \"payment_type\": \"PURCHASE\",\n      \"amount\": 294,\n      \"currency\": \"CAD\",\n      \"net_amount\": 294,\n      \"fee_amount\": 0,\n      \"pending_amount\": 0,\n      \"pending_unfreeze_on\": null,\n      \"description\": \"\",\n      \"paid_on\": 1745359487,\n      \"remote_paid_on\": 1745359487\n    },\n    \"issuer_details\": {\n      \"website\": \"\",\n      \"legal_street_address\": \"\",\n      \"legal_country\": \"\",\n      \"legal_city\": \"\",\n      \"legal_zip_code\": \"\",\n      \"bank_accounts\": [\n        {}\n      ],\n      \"legal_name\": \"FISCOM\",\n      \"brand_name\": \"FISCOM\",\n      \"registration_number\": \"\",\n      \"tax_number\": \"\"\n    },\n    \"transaction_data\": {\n      \"payment_method\": \"\",\n      \"flow\": \"payform\",\n      \"extra\": {\n        \"amount\": 294,\n        \"masked_pan\": \"INTERAC\"\n      },\n      \"country\": \"\",\n      \"attempts\": [\n        {\n          \"client_ip\": \"185.199.101.249\",\n          \"type\": \"execute\",\n          \"payment_method\": \"INTERAC\",\n          \"flow\": \"payform\",\n          \"successful\": true,\n          \"country\": \"INTERAC\",\n          \"processing_time\": 1745359487,\n          \"extra\": {\n            \"amount\": 294,\n            \"masked_pan\": \"INTERAC\"\n          }\n        }\n      ]\n    },\n    \"status\": \"PAID\",\n    \"status_history\": [\n      {\n        \"status\": \"created\",\n        \"timestamp\": 1745359481\n      },\n      {\n        \"status\": \"pending_execute\",\n        \"timestamp\": 1745359487\n      },\n      {\n        \"status\": \"payment_in_process\",\n        \"timestamp\": 1745359491\n      },\n      {\n        \"status\": \"viewed\",\n        \"timestamp\": 1745359500\n      },\n      {\n        \"status\": \"paid 294.0\",\n        \"timestamp\": 1745359929\n      }\n    ],\n    \"viewedOn\": 1745359932,\n    \"is_test\": false,\n    \"brand_id\": \"88f25364-8d96-4c2f-8dae-d4aa2756e4e3\",\n    \"send_receipt\": false,\n    \"is_recurring_token\": false,\n    \"skip_capture\": false,\n    \"reference_generated\": \"PS4754\",\n    \"reference\": \"7235\",\n    \"issued\": \"2025-04-22\",\n    \"due\": 1745359481,\n    \"refund_upto\": 0,\n    \"cc_descriptor\": \"Africhange Technologies\",\n    \"fraudScore\": \"NA\",\n    \"trustScore\": \"NA\",\n    \"fx_Currency\": \"CAD\",\n    \"fx_Amount\": \"294.00\",\n    \"transFees\": \"0.44\",\n    \"refundFee\": \"NA\",\n    \"chargeBackFee\": \"NA\",\n    \"rollingReserve\": \"0.00\",\n    \"cascade_Num\": \"NA\",\n    \"debitOrcredit\": \"NA\",\n    \"conversionRiskFactorApplied\": \"0\",\n    \"payInDetails\": {\n      \"name\": \"INTERAC E-TRANSFER\",\n      \"emailAddress\": \"transfer@ieft.ca\",\n      \"secretQA\": \"q4754199\",\n      \"secretAnswer\": \"a4754199\"\n    },\n    \"paidOn\": 1745359929,\n    \"receivedAmt\": 294,\n    \"refund_availability\": \"NONE\",\n    \"refundable_amount\": 0,\n    \"success_redirect\": \"https://firstinvestschool.com/?wc-api=wc_gateway_payments&amp;id=7235&amp;action=paid\",\n    \"failure_redirect\": \"https://firstinvestschool.com/?wc-api=wc_gateway_payments&amp;id=7235&amp;action=cancel\",\n    \"cancel_redirect\": \"https://firstinvestschool.com/?wc-api=wc_gateway_payments&amp;id=7235&amp;action=cancel\",\n    \"success_callback\": \"https://firstinvestschool.com/?wc-api=wc_gateway_payments&amp;id=7235&amp;action=paid\",\n    \"failure_callback\": \"\",\n    \"creator_agent\": \"Paybomb Payments for WooCommerce: v1.2.3\",\n    \"platform\": \"API\",\n    \"created_from_ip\": \"54.229.186.248, 172.70.58.20, 15.158.56.19\",\n    \"checkout_url\": \"https://api.choicepay.ca/payments/6808127876673d75156df3e6/\",\n    \"direct_post_url\": \"https://api.choicepay.ca/api/v1/p/6808127876673d75156df3e6/\",\n    \"mdr\": \"13.52\",\n    \"payoutProcess\": false\n  },\n  \"status\": \"paid\"\n}\n\n</code></pre>\n","_postman_id":"4f2ccc76-3168-4846-a558-93ada3d4a5bd"},{"name":"Payout","item":[],"id":"36e6adf0-005d-4f25-ad8a-c2543f6c4874","description":"<h3 id=\"overview\">Overview</h3>\n<p>When a transaction status changes to a terminal state (e.g., paid, pending_review (in development)), our payment gateway sends a server-to-server POST callback to the merchant's configured Webhook URL.</p>\n<p>The callback includes full transaction details so the merchant can update order status in real time.</p>\n<h3 id=\"webhook-events-for-payouts\">Webhook Events for Payouts</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Event type (Condition applied in code)</th>\n<th>Status</th>\n<th>When is the event triggered</th>\n<th>Is this a terminal event</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Payout – Created</td>\n<td>created</td>\n<td>When the payout request is created</td>\n<td>No</td>\n</tr>\n<tr>\n<td>Payout – in Process</td>\n<td>payout_in_process</td>\n<td>When the Payout request is triggered to the bank, and the status is in pending</td>\n<td>No</td>\n</tr>\n<tr>\n<td>Payout – Pending Review</td>\n<td>pending_review</td>\n<td>When the payout request needs manual review from the merchant</td>\n<td>No</td>\n</tr>\n<tr>\n<td>payout – failure</td>\n<td>error</td>\n<td>Triggered when the payout request fails (system/PSP error, rejection, etc.).</td>\n<td>✅ Yes</td>\n</tr>\n<tr>\n<td>payout – success</td>\n<td>paid</td>\n<td>Triggered when the payout is processed successfully and funds are released.</td>\n<td>✅ Yes</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"webhook-payload-specification\"><strong>Webhook Payload Specification</strong></h2>\n<h3 id=\"fields-description\"><strong>Fields Description</strong></h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Key</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>payload.payoutId</td>\n<td>Unique identifier of the payout generated by Paybomb.</td>\n</tr>\n<tr>\n<td>payload.client.customerId</td>\n<td>Customer’s ID in the merchant’s system (if available), otherwise \"NA\".</td>\n</tr>\n<tr>\n<td>payload.client.email</td>\n<td>Customer’s email address.</td>\n</tr>\n<tr>\n<td>payload.client.phone</td>\n<td>Customer’s phone number (with country code).</td>\n</tr>\n<tr>\n<td>payload.client.full_name</td>\n<td>Full name of the customer.</td>\n</tr>\n<tr>\n<td>payload.client.country</td>\n<td>ISO 2-letter country code of the customer.</td>\n</tr>\n<tr>\n<td>payload.updated_on</td>\n<td>UNIX timestamp of the last update to the payout transaction.</td>\n</tr>\n<tr>\n<td>payload.payoutMethod</td>\n<td>Payout method used (e.g., \"PAYOUT-INTERAC\").</td>\n</tr>\n<tr>\n<td>payload.amountUnit</td>\n<td>Unit of amount — \"MAJOR\" for full currency unit, \"MINOR\" for subunits.</td>\n</tr>\n<tr>\n<td>payload.amount</td>\n<td>Total payout amount.</td>\n</tr>\n<tr>\n<td>payload.errorMsg</td>\n<td>Message describing the payout result — success message or error details.</td>\n</tr>\n<tr>\n<td>payload.purpose</td>\n<td>Purpose/description of the payout.</td>\n</tr>\n<tr>\n<td>payload.created_on</td>\n<td>UNIX timestamp when the payout was created.</td>\n</tr>\n<tr>\n<td>payload.merchantRef</td>\n<td>Unique transaction reference from the merchant.</td>\n</tr>\n<tr>\n<td>payload.merchantName</td>\n<td>Registered merchant name in Paybomb.</td>\n</tr>\n<tr>\n<td>payload.currency</td>\n<td>Currency code of the payout (ISO 4217).</td>\n</tr>\n<tr>\n<td>payload.fx_Currency</td>\n<td>FX (foreign exchange) currency used (if applicable).</td>\n</tr>\n<tr>\n<td>payload.fx_Amount</td>\n<td>FX-adjusted payout amount.</td>\n</tr>\n<tr>\n<td>payload.transFees</td>\n<td>Transaction fee amount.</td>\n</tr>\n<tr>\n<td>payload.paymentOn</td>\n<td>UNIX timestamp when the payout was completed/paid.</td>\n</tr>\n<tr>\n<td>payload.payOutDetails.name</td>\n<td>Payout instrument name (e.g., \"INTERAC E-TRANSFER\").</td>\n</tr>\n<tr>\n<td>payload.payOutDetails.emailAddress</td>\n<td>Payout recipient email address.</td>\n</tr>\n<tr>\n<td>payload.payOutDetails.secretQA</td>\n<td>Security question used for payout (if applicable).</td>\n</tr>\n<tr>\n<td>payload.payOutDetails.secretAnswer</td>\n<td>Security answer used for payout (if applicable).</td>\n</tr>\n<tr>\n<td>payload.taxAmount</td>\n<td>Tax amount applied to the payout.</td>\n</tr>\n<tr>\n<td>payload.taxPercent</td>\n<td>Tax percentage applied to the payout.</td>\n</tr>\n<tr>\n<td>payload.redirectType</td>\n<td>Redirect method after payout completion (e.g., \"POST\").</td>\n</tr>\n<tr>\n<td>payload.pendingReview</td>\n<td>Indicates if the payout is under review (\"Yes\"/\"No\").</td>\n</tr>\n<tr>\n<td>payload.surcharge</td>\n<td>Surcharge amount applied (if any).</td>\n</tr>\n<tr>\n<td>payload.success_callback</td>\n<td>Callback URL invoked on payout success.</td>\n</tr>\n<tr>\n<td>payload.failure_callback</td>\n<td>Callback URL invoked on payout failure.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"possible-status-values\"><strong>Possible Status Values</strong></h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>status</th>\n<th>description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>error</td>\n<td>Payout failed due to an error.</td>\n</tr>\n<tr>\n<td>created</td>\n<td>Payout record created but not paid yet.</td>\n</tr>\n<tr>\n<td>paid</td>\n<td>payment completed successfully.</td>\n</tr>\n<tr>\n<td>payout_in_process</td>\n<td>Payout is in progress.</td>\n</tr>\n<tr>\n<td>pending_review</td>\n<td>Payout needs to be reviewed</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"🔐-key-pair-generation\"><strong>🔐 Key Pair Generation</strong></h2>\n<p><strong>Paybomb uses RSA key pairs to digitally sign webhooks, ensuring all notifications are both secure and authentic.</strong></p>\n<hr />\n<h3 id=\"1-generate-your-keys\"><strong>1. Generate Your Keys</strong></h3>\n<img src=\"https://content.pstmn.io/7518adf1-d6ec-4b0e-b1bb-b6710a5173f1/U2NyZWVuc2hvdCAyMDI1LTExLTE3IGF0IDExLjM4LjIw4oCvQU0ucG5n\" />\n\n<ul>\n<li><p>Click “Generate Key Pair” in the dashboard.</p>\n</li>\n<li><p>A unique RSA private key and public key are created for your merchant ID</p>\n</li>\n</ul>\n<h3 id=\"2-key-storage\"><strong>2. Key Storage</strong></h3>\n<img src=\"https://content.pstmn.io/0a39578e-0796-4671-80f6-d68ca391bdef/U2NyZWVuc2hvdCAyMDI1LTExLTE3IGF0IDExLjM4LjMw4oCvQU0ucG5n\" />\n\n<ul>\n<li><p>Private Key → Stored securely by Paybomb (never exposed).</p>\n</li>\n<li><p>Public Key → Displayed to you once on the screen. Copy and save it for verifying signatures.</p>\n</li>\n</ul>\n<h3 id=\"3-webhook-signing\"><strong>3. Webhook Signing</strong></h3>\n<ul>\n<li><p>Every webhook payload is signed using Paybomb’s private key.</p>\n</li>\n<li><p>The signature is included in webhook headers:</p>\n<ul>\n<li>paybomb-sign or paybomb_sign</li>\n</ul>\n</li>\n</ul>\n<h3 id=\"4-verification\"><strong>4. Verification</strong></h3>\n<ul>\n<li><p>Use your public key to verify the paybomb-sign header against the webhook body.</p>\n</li>\n<li><p>This ensures the webhook came from Paybomb and was not tampered with.</p>\n</li>\n</ul>\n<h2 id=\"🔏-signature-paybomb-sign-or-paybomb_sign\"><strong>🔏 Signature: paybomb-sign (or paybomb_sign)</strong></h2>\n<p><strong>The paybomb-sign header is a Base64-encoded digital signature generated using your merchant-specific RSA private key.</strong></p>\n<h3 id=\"🔨-how-the-signature-is-generated\"><strong>🔨 How the Signature is Generated</strong></h3>\n<ol>\n<li><strong>Message Construction</strong></li>\n</ol>\n<p>Concatenate the following fields in order:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>{payoutId}|{payload.status}\n\n</code></pre><p><strong>Example:</strong></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>1234567890|paid\n\n</code></pre><p><strong>2. Signing Algorithm</strong></p>\n<ol>\n<li><p>Algorithm: SHA256withRSA</p>\n</li>\n<li><p>Output: Base64-encoded signature (sent in the paybomb-sign header).</p>\n</li>\n</ol>\n<h3 id=\"✅-how-to-verify-the-signature\"><strong>✅ How to Verify the Signature</strong></h3>\n<ol>\n<li><strong>Rebuild the Message</strong></li>\n</ol>\n<p>From the webhook JSON body, extract:</p>\n<ul>\n<li><p>payoutId</p>\n</li>\n<li><p>payload.status (convert to lowercase)</p>\n</li>\n</ul>\n<p>Reconstruct the string in the same format:<br />{payoutId}|{payload.status}</p>\n<p><strong>2. Verification Steps</strong></p>\n<ul>\n<li><p>Use your stored public key.</p>\n</li>\n<li><p>Decode the paybomb-sign header from Base64.</p>\n</li>\n<li><p>Verify using SHA256withRSA.</p>\n</li>\n<li><p>If verification succeeds, the webhook is authentic and untampered.</p>\n</li>\n</ul>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-java\">public static boolean verifySignature(String message, String signatureBase64, PublicKey publicKey) throws Exception {\n    Signature signature = Signature.getInstance(\"SHA256withRSA\");\n    signature.initVerify(publicKey);\n    signature.update(message.getBytes());\n    byte[] signatureBytes = Base64.getDecoder().decode(signatureBase64);\n    return signature.verify(signatureBytes);\n}\n\n</code></pre>\n<ul>\n<li><p>message → The reconstructed string (payoutId|status)</p>\n</li>\n<li><p>signatureBase64 → Value from paybomb-sign header</p>\n</li>\n<li><p>publicKey → Your saved Paybomb public key</p>\n</li>\n</ul>\n<p><strong>Sample Webhook:</strong></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"payload\": {\n    \"payoutId\": \"68b02af16c4f71530ae1d73b\",\n    \"client\": {\n      \"customerId\": \"NA\",\n      \"email\": \"ashishm.21190@gmail.com\",\n      \"phone\": \"+14377717874\",\n      \"full_name\": \"Ashish Mistry\",\n      \"country\": \"CA\"\n    },\n    \"updated_on\": 1756375793,\n    \"payoutMethod\": \"PAYOUT-INTERAC-ETRANSFER\",\n    \"amountUnit\": \"MAJOR\",\n    \"amount\": 6,\n    \"errorMsg\": \"\",\n    \"purpose\": \"test payout\",\n    \"created_on\": 1756375793,\n    \"merchantRef\": \"68b02af16c4f71530ae1d73b\",\n    \"merchantName\": \"arunsinghal\",\n    \"status\": \"PAID\",\n    \"status_history\": [\n      {\n        \"status\": \"created\",\n        \"timestamp\": 1756375793\n      },\n      {\n        \"status\": \"paid\",\n        \"timestamp\": 1756375810\n      }\n    ],\n    \"currency\": \"CAD\",\n    \"fx_Currency\": \"CAD\",\n    \"fx_Amount\": \"6.00\",\n    \"transFees\": \"0.3\",\n    \"paymentOn\": 1756375810,\n    \"payOutDetails\": {\n      \"name\": \"INTERAC E-TRANSFER\",\n      \"emailAddress\": \"ashishm.21190@gmail.com\",\n      \"secretQA\": \"q680216471530173202\",\n      \"secretAnswer\": \"a680216471530173202\"\n    },\n    \"taxAmount\": 0,\n    \"taxPercent\": 0,\n    \"redirectType\": \"POST\",\n    \"pendingReview\": \"No\",\n    \"surcharge\": 0,\n    \"success_callback\": \"https://webhook.site/d7660184-d724-480c-bad0-cf0480f5518e\",\n    \"failure_callback\": \"https://webhook.site/d7660184-d724-480c-bad0-cf0480f5518e\",\n    \"mdr\": \"0.00\"\n  },\n  \"status\": \"paid\"\n}\n\n</code></pre>\n","_postman_id":"36e6adf0-005d-4f25-ad8a-c2543f6c4874"}],"id":"866d6797-1421-4a25-9350-26b855186454","description":"<p>To receive information about various transaction status and events, you will need to set up an endpoint which accepts payloads sent by Paybomb. Your endpoint will receive <strong>POST</strong> requests with <strong>content-type: application/json</strong>.</p>\n<h3 id=\"configuring-the-webhook-endpoint\">Configuring the webhook endpoint</h3>\n<p>The webhook endpoint can be set up on <code>Partner Dashboard -&gt; Webhooks -&gt; New Webhook</code>.</p>\n<img src=\"https://content.pstmn.io/4ef63c63-3a0c-433a-8b5f-94c81d334c55/VW50aXRsZWQgZGVzaWduICg0MSkucG5n\" alt />\n\n<p>Make sure you save the endpoint by clicking \"Create\".</p>\n<p>Paybomb will post all payloads to the specified URLs. Please note that if merchant face any issues with accepting the webhook, it will not be resent. Alternatively the merchant can call Paybomb get status API to verify the status of a purchase.</p>\n<h3 id=\"steps-to-configure-a-webhook\"><strong>Steps to Configure a Webhook</strong></h3>\n<img src=\"https://content.pstmn.io/1194a265-9fc4-4ef1-ac1e-b068057545a9/VW50aXRsZWQgZGVzaWduICgzOSkucG5n\" alt />\n\n<p><strong>1.Add a New Webhook:</strong></p>\n<ul>\n<li>Click on the “New Webhook” button.</li>\n</ul>\n<p><strong>2. Provide Details:</strong></p>\n<ul>\n<li><p>Name: Give the webhook a descriptive name.</p>\n</li>\n<li><p>Payment Method Selection:</p>\n</li>\n</ul>\n<p>a. Choose a specific payment method or select “All” for universal callbacks.</p>\n<ul>\n<li>Enter URL:</li>\n</ul>\n<p>a. Provide the callback URL where the event notifications will be sent.</p>\n<p><strong>3. Select Event Triggers:</strong></p>\n<p>a. Choose from a list of available events (Note: Depending on the payment method, not all events may be available.)</p>\n<p><strong>4. Save configuration:</strong></p>\n<p>a. Click “Save” to store the webhook settings.**</p>\n<h2 id=\"notes\">Notes:</h2>\n<ol>\n<li><p>You can setup one URL for all the events or individual URLs for each of the events. Paybomb would call the webhooks based on whatever the setup is. If only one URL, the developer will need to extract the message from the payload information.</p>\n</li>\n<li><p>In case of a success_callback (webhook) or failure_callback (webhook) is given the <code>/purchases</code> API or <code>/createSession</code> API, then priority will be given to API callback webhooks, and not the webhooks set in the merchant dashboard. In other words, the webhooks given in the API will override the webhooks set in the merchant dashboard. The webhook posted would be a JSON object (either purchase or payout object as the case might be) containing the status. This object is the same as the one you will get in the <code>/getStatus</code> API call <code>https://app.paybomb.tech/api/v1/purchases/{purchaseId}/</code></p>\n</li>\n</ol>\n<h2 id=\"available-event-for-subscription\">Available Event for subscription</h2>\n<p>When a transaction status changes to a terminal state (e.g., paid, refunded, expired), our payment gateway sends a server-to-server POST callback to the merchant's configured Webhook URL.</p>\n<p>The callback includes full transaction details so the merchant can update order status in real time.</p>\n<h2 id=\"http-method--headers\"><strong>HTTP Method &amp; Headers</strong></h2>\n<p><strong>Method: POST</strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Header</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Content-Type</td>\n<td><strong>application/json; charset=utf-8 — Indicates the payload format is JSON in UTF-8 encoding.</strong></td>\n</tr>\n<tr>\n<td>User-Agent</td>\n<td>Always set to \"Paybomb\" — Identifies the request origin as Paybomb.</td>\n</tr>\n<tr>\n<td>paybomb_sign</td>\n<td><strong>Present only if a signature value (paybomb_sign) is generated(</strong><a href=\"https://docs.google.com/document/d/1qgsO7_jxMOXASnezEw-RU70WNddCfKrXWCwPGJLmqUs/edit?tab=t.nwoa2ohizyre#heading=h.rlwjz036ocez\"><b>see the logic below</b></a><strong>). This is used for validating the authenticity of the callback.</strong></td>\n</tr>\n<tr>\n<td>paybomb-sign</td>\n<td><strong>Same signature value as paybomb_sign but provided in an alternate header name for better compatibility.</strong></td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"webhook-structure\"><strong>Webhook structure</strong></h3>\n<p>We add a signature as “<strong>paybomb_sign</strong>” or <strong>\"paybomb-sign\"</strong> in the webhook header for verifying the payload, If you have already created a <strong>public key</strong> from your merchant dashboard.</p>\n<p>To verify this signature, decrypt the signature with your public key. Compare this with the values which you received in your payload.</p>\n<p>Use the following method (in Java) for signature verification.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-java\"> private static boolean verify(String message,String signature, PublicKey publicKey) throws Exception \n{\n    Signature verifier = Signature.getInstance(\"SHA256withRSA\");\n    verifier.initVerify(publicKey);\n    verifier.update(message.getBytes());\n    return verifier.verify(Base64.getDecoder().decode(signature.getBytes()));\n}\n\n</code></pre>\n<ol>\n<li><p>Where the <strong>message</strong> is the combination of values which you received in the payload:</p>\n<ol>\n<li><p>For Payins: the message is a combination of <strong><code>purchaseId+\"|\"+status(uppercase)+\"|\"+brandId</code></strong></p>\n</li>\n<li><p>Payouts: this message is a combination of p**<code>ayoutId+\"|\"+status(lowercase)</code>**</p>\n</li>\n</ol>\n</li>\n<li><p>The signature is the value of the “<strong>paybomb_sign</strong>” or <strong>\"paybomb-sign\"</strong> you received in webhook.</p>\n</li>\n<li><p>You can obtain the <strong>Public Key</strong> from your merchant dashboard.</p>\n</li>\n</ol>\n","_postman_id":"866d6797-1421-4a25-9350-26b855186454"},{"name":"🖥️ Status Code","item":[{"name":"Transaction Status and Their Meaning","item":[],"id":"f8790b34-2cbb-4557-b664-e9be5fa45eaf","description":"<p>The lifecycle of a transaction is reflected through the status of the transaction.</p>\n<p>This section details various statuses of a transaction and what it means and when does it appears.</p>\n<p>The status of a transaction can be read from the <code>\"status\"</code> field of the responses or webhook payload.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Status</strong></th>\n<th><strong>Description</strong></th>\n<th><strong>When it Appears</strong></th>\n<th><strong>Is it Final?</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>CREATED</td>\n<td>Purchase is created in the system.</td>\n<td>When Purchase API is called, the transaction is created as \"CREATED\".</td>\n<td>N</td>\n</tr>\n<tr>\n<td>CANCELLED</td>\n<td>Purchase is cancelled in the system. Only transactions in \"CREATED\" status can be cancelled.</td>\n<td>When Cancel API is called.</td>\n<td>Y</td>\n</tr>\n<tr>\n<td>PENDING EXECUTE</td>\n<td>Purchase hasn't been completed yet. Only transactions in \"CREATED\" status can become \"PENDING EXECUTE\" after S2S API call.</td>\n<td>The callback URL provided in the S2S call response hasn't been called by merchant yet.</td>\n<td>N</td>\n</tr>\n<tr>\n<td>OVERDUE</td>\n<td>Purchase hasn't been completed yet. Only transactions in \"CREATED\" status can become \"OVERDUE\" if S2S API hasn't been called in 2 hours.</td>\n<td>S2S API hasn't been called within 2 hours since transaction creation.</td>\n<td>N</td>\n</tr>\n<tr>\n<td>EXPIRED</td>\n<td>Purchase hasn't been completed. Only transactions in \"PAYMENT IN PROCESS\" and \"PENDING EXECUTE\" status can become \"EXPIRED\". After payment in process, no data is provided.</td>\n<td>The callback URL provided in the S2S call response hasn't been called by the merchant after the specific time period.</td>\n<td>Y</td>\n</tr>\n<tr>\n<td>PAID</td>\n<td>Purchase has been completed successfully. Only transactions in \"PAYMENT IN PROCESS\" status can become \"PAID\".</td>\n<td>The callback URL provided in the S2S call response has been called by the merchant.</td>\n<td>Y</td>\n</tr>\n<tr>\n<td>PAYMENT IN PROCESS</td>\n<td>Purchase hasn't been completed. Only transactions in \"PENDING EXECUTE\" status can become \"PAYMENT IN PROCESS\".</td>\n<td>When the user's action is pending (e.g., OTP confirmation). Transaction can stay in this status for 24 hours since creation.</td>\n<td>N</td>\n</tr>\n<tr>\n<td>CHARGEBACK</td>\n<td>Transaction type that allows customers to receive money back.</td>\n<td>When requested by customer or merchant (manual process).</td>\n<td>Y</td>\n</tr>\n<tr>\n<td>REFUNDED</td>\n<td>Only transactions in \"REFUND IN PROCESS\" status can become \"REFUNDED\".</td>\n<td>When the provider confirms the refund.</td>\n<td>Y</td>\n</tr>\n<tr>\n<td>REFUND IN PROCESS</td>\n<td>Only transactions in <strong>\"PAID\"</strong> status can become <strong>\"REFUND IN PROCESS\"</strong>.</td>\n<td>When Refund API is called and a response is received with \"REFUND IN PROCESS\" status.</td>\n<td>N</td>\n</tr>\n<tr>\n<td>ERROR</td>\n<td>Only transactions in statuses: <strong>\"PENDING EXECUTE\"</strong>, <strong>\"PAYMENT IN PROCESS\"</strong>, <strong>\"PAYOUT IN PROCESS\"</strong> or <strong>\"REFUND IN PROCESS\"</strong> can become \"ERROR\".</td>\n<td>Refers to the Errors list for possible errors.</td>\n<td>Y</td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>Note:</strong></p>\n<p>If you want a more detailed error message, please rely on the <strong>\"errorMsg\"</strong> field in the responses or webhook payload.</p>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"type":"text/javascript","exec":[""],"id":"9c63deaa-2a41-40ba-94c0-12e74ce868ed"}},{"listen":"test","script":{"type":"text/javascript","exec":[""],"id":"f87235e7-b404-4746-a736-5b2a5e666cf5"}}],"_postman_id":"f8790b34-2cbb-4557-b664-e9be5fa45eaf"}],"id":"6959c487-f49f-4ed7-8fbe-0b751ff46c63","description":"<h1 id=\"http-response-code\">HTTP Response Code</h1>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Code</strong></th>\n<th><strong>Triggering Event</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>200</td>\n<td>Successful Response</td>\n</tr>\n<tr>\n<td>202</td>\n<td>Successful / Accepted</td>\n</tr>\n<tr>\n<td>400</td>\n<td>Bad request, the given data is invalid, or additional data is required</td>\n</tr>\n<tr>\n<td>401</td>\n<td>unauthorized request</td>\n</tr>\n<tr>\n<td>404</td>\n<td>page not found</td>\n</tr>\n<tr>\n<td>405</td>\n<td>Method Not Allowed (GET/POST)</td>\n</tr>\n<tr>\n<td>415</td>\n<td>unsupported media type</td>\n</tr>\n<tr>\n<td>422</td>\n<td>Unprocessable content, data is required</td>\n</tr>\n<tr>\n<td>429</td>\n<td>Too many request attempt</td>\n</tr>\n<tr>\n<td>500</td>\n<td>Internal server error</td>\n</tr>\n</tbody>\n</table>\n</div><p>You will not get Error codes if HTTPS response code is 200 or 202.</p>\n<h2 id=\"error-codes-and-messages\">Error Codes and Messages</h2>\n<h3 id=\"with-http-code-400-404-401-405-415\">with http code (400, 404, 401, 405, 415)</h3>\n<p>Below is the list of possible error codes and the corresponding messages from Paybomb System</p>\n<h2 id=\"format\">Format</h2>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"message\": \"descriptive error message\",\n    \"code\": \"error_code\"\n}\n\n</code></pre>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Code</strong></th>\n<th><strong>Message</strong></th>\n<th><strong>APIs that could generate the error code</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Authentication_failed</td>\n<td>Authorization header missing</td>\n<td>All</td>\n</tr>\n<tr>\n<td>already_in_process</td>\n<td>Some Processing is running on this purchaseId</td>\n<td>All</td>\n</tr>\n<tr>\n<td>unsupported_media_type</td>\n<td>Unsupported media type \"text/plain; charset=ISO-8859-1\" in request.</td>\n<td>All</td>\n</tr>\n<tr>\n<td>authentication_failed</td>\n<td>Incorrect secret_key/Invalid Merchant Type</td>\n<td>All</td>\n</tr>\n<tr>\n<td>transaction_error</td>\n<td>See the table below</td>\n<td>See the table below</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"transaction_error-message-list\">\"transaction_error\" Message List</h2>\n<p>All the Messages possible when \"transaction_error\" is in reponse:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Message</strong></th>\n<th><strong>APIs that generate the error Message</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Cvv_error</td>\n<td>after executing callback_url</td>\n</tr>\n<tr>\n<td>Expired card</td>\n<td>after executing callback_url</td>\n</tr>\n<tr>\n<td>expiry_date_error</td>\n<td>after executing callback_url</td>\n</tr>\n<tr>\n<td>Insufficient fund</td>\n<td>after executing callback_url</td>\n</tr>\n<tr>\n<td>Invalid card number</td>\n<td>after executing callback_url</td>\n</tr>\n<tr>\n<td>Issuing bank - do not honer</td>\n<td>after executing callback_url</td>\n</tr>\n<tr>\n<td>Picking card</td>\n<td>after executing callback_url</td>\n</tr>\n<tr>\n<td>Temp error - card blocked</td>\n<td>after executing callback_url</td>\n</tr>\n<tr>\n<td>Transaction declined - try again</td>\n<td>after executing callback_url</td>\n</tr>\n<tr>\n<td>PurchaseId Not found.</td>\n<td>after executing callback_url</td>\n</tr>\n<tr>\n<td>Only purchases that can be paid for can be initiated for payment.</td>\n<td>after executing callback_url</td>\n</tr>\n<tr>\n<td>Customer/Ip is Blocked</td>\n<td>after executing callback_url</td>\n</tr>\n<tr>\n<td>Client Ip could not be match with Merchant Ip</td>\n<td>s2s calling</td>\n</tr>\n<tr>\n<td>Invalid Card Information</td>\n<td>s2s calling</td>\n</tr>\n<tr>\n<td>Card is Blocked</td>\n<td>s2s calling</td>\n</tr>\n<tr>\n<td>Different Type of key used to create purchase and payment</td>\n<td>s2s calling</td>\n</tr>\n<tr>\n<td>You charges setting is in complete .Please Contact to Administrator.</td>\n<td>s2s calling</td>\n</tr>\n<tr>\n<td>Allowed Attempt for this Transaction has been consumed</td>\n<td>s2s calling</td>\n</tr>\n<tr>\n<td>Customer not allowed For transaction</td>\n<td>s2s calling</td>\n</tr>\n<tr>\n<td>Invalid Card Expiry(Valid Format:MM/YY) must be greater than current month/year</td>\n<td>s2s calling</td>\n</tr>\n<tr>\n<td>Customer profile is Blocked</td>\n<td>s2s calling</td>\n</tr>\n<tr>\n<td>Customer/Card not allowed for transaction</td>\n<td>s2s calling</td>\n</tr>\n<tr>\n<td>Allowed Limit for this card for particular time period has been consumed</td>\n<td>create purchase</td>\n</tr>\n<tr>\n<td>some Mandatory Parameter are missing</td>\n<td>create purchase</td>\n</tr>\n<tr>\n<td>Invalid_Parameter</td>\n<td>create purchase</td>\n</tr>\n<tr>\n<td>Invalid format of Date_of_Birth[allowed format: yyyy-mm-dd]</td>\n<td>create purchase</td>\n</tr>\n<tr>\n<td>Invalid Email Format</td>\n<td>create purchase</td>\n</tr>\n<tr>\n<td>Please submit Valid Alpha2 Country Code Ex:(AF,IN) in \\\"country\\\" parameter</td>\n<td>create purchase</td>\n</tr>\n<tr>\n<td>Please pass Valid State Code</td>\n<td>create purchase</td>\n</tr>\n<tr>\n<td>Please pass valid street address in \\\"street_address\\\" parameter</td>\n<td>create purchase</td>\n</tr>\n<tr>\n<td>Please pass valid city name in \\\"city\\\" parameter</td>\n<td>create purchase</td>\n</tr>\n<tr>\n<td>Please pass valid postal Code name in \\\"zip_code\\\" parameter</td>\n<td>create purchase</td>\n</tr>\n<tr>\n<td>You are not Allowed for Live Transaction</td>\n<td>create purchase</td>\n</tr>\n<tr>\n<td>Merchant Limit is not set</td>\n<td>create purchase</td>\n</tr>\n<tr>\n<td>Minimum amount is not set for this merchant</td>\n<td>create purchase</td>\n</tr>\n<tr>\n<td>Brand not found!</td>\n<td>create purchase</td>\n</tr>\n<tr>\n<td>Your charges setting is incomplete .Plese Contact to Administrator.</td>\n<td>create purchase</td>\n</tr>\n<tr>\n<td>Only “curr_name” currency is allowed</td>\n<td>create purchase</td>\n</tr>\n<tr>\n<td>Transaction amount must be equal or greater to minimum trans amount</td>\n<td>create purchase</td>\n</tr>\n<tr>\n<td>Transaction amount must not be greater to maximum trans amount</td>\n<td>create purchase</td>\n</tr>\n<tr>\n<td>This Purchase was already fully refunded.</td>\n<td><code>/refund/</code></td>\n</tr>\n<tr>\n<td>Previous Refund Request already in Process</td>\n<td><code>/refund/</code></td>\n</tr>\n<tr>\n<td>Max Time for Refund was elapsed.</td>\n<td><code>/refund/</code></td>\n</tr>\n<tr>\n<td>Refund can not be initiated .Please contact Administrator.</td>\n<td><code>/refund/</code></td>\n</tr>\n<tr>\n<td>Only Purchases with `status == (paid)` can be refunded.</td>\n<td><code>/refund/</code></td>\n</tr>\n<tr>\n<td>Only purchases that can be paid for can be cancelled.</td>\n<td><code>/cancel/</code></td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"type":"text/javascript","exec":[""],"id":"f703b1fb-b943-498c-8702-205b986616c8"}},{"listen":"test","script":{"type":"text/javascript","exec":[""],"id":"5c9bcfb8-b49a-4f6a-b4a1-01cb51e2b65b"}}],"_postman_id":"6959c487-f49f-4ed7-8fbe-0b751ff46c63"},{"name":"Payment Methods","item":[{"name":"💳 Card Payments","item":[{"name":"Concepts","item":[],"id":"01819b93-c4c4-4e77-b7f4-b02d62c70a84","description":"<h1 id=\"paybomb-card-payments\">Paybomb Card Payments</h1>\n<h1 id=\"get-started\"><strong>Get started</strong></h1>\n<p>Paybomb’s Server-to-Server (S2S) integration allows merchants to process card payments entirely from their backend systems. In this model, the client application or browser does not interact directly with Paybomb APIs. All sensitive payment operations are handled securely on the server.</p>\n<p>This integration is recommended for merchants who require:</p>\n<ul>\n<li><p>Full control over the checkout experience</p>\n</li>\n<li><p>Reduced exposure of platform endpoints</p>\n</li>\n<li><p>A secure and compliant payment architecture</p>\n</li>\n</ul>\n<h1 id=\"how-it-works\"><strong>How it works</strong></h1>\n<p>The S2S card payment flow follows a three-step process:</p>\n<ol>\n<li><p>Create a purchase<br /> Register the transaction and generate a unique purchaseId.</p>\n</li>\n<li><p>Submit card details (S2S)<br /> Send card and device details securely from your server.</p>\n</li>\n<li><p>Handle callbacks and redirects<br /> Complete the transaction using 2D or 3D Secure flows.</p>\n</li>\n</ol>\n<p><strong>This integration supports:</strong></p>\n<ul>\n<li><p>2D (non-3DS) transactions</p>\n</li>\n<li><p>3D Secure Frictionless transactions</p>\n</li>\n<li><p>3D Secure Challenge transactions</p>\n</li>\n</ul>\n<h1 id=\"before-you-begin\"><strong>Before you begin</strong></h1>\n<p>Before starting the integration, ensure the following prerequisites are met:</p>\n<ul>\n<li><p>You have received your API credentials from Paybomb</p>\n</li>\n<li><p>Your server can make secure HTTPS requests</p>\n</li>\n<li><p>You are PCI-DSS compliant for handling card data</p>\n</li>\n<li><p>You have configured the following redirect URLs:</p>\n<ul>\n<li><p>success_redirec</p>\n</li>\n<li><p>pending_redirect</p>\n</li>\n<li><p>failure_redirect</p>\n</li>\n</ul>\n</li>\n<li><p>You have a valid brand_id provided by Paybomb</p>\n</li>\n</ul>\n<h1 id=\"create-a-new-payment-session\"><strong>Create a New Payment Session</strong></h1>\n<p>A payment session is created when a purchase is initialized in the Paybomb system. This session represents the starting point of a transaction and is required before submitting any payment details or initiating authentication flows.</p>\n<p>Creating a payment session registers the transaction details, configures redirect URLs, and generates a unique identifier (purchaseId) that is used in all subsequent Server-to-Server (S2S) payment operations.</p>\n<h2 id=\"when-to-create-a-payment-session\"><strong>When to create a payment session</strong></h2>\n<p>You must create a new payment session when:</p>\n<ul>\n<li><p>A customer initiates a new checkout</p>\n</li>\n<li><p>A new payment attempt is required</p>\n</li>\n<li><p>You want to process a card payment using S2S integration</p>\n</li>\n<li><p>You need to support 2D or 3D Secure payment flows</p>\n</li>\n</ul>\n<p>Each payment session corresponds to one transaction attempt.</p>\n<h2 id=\"payment-session-flow\"><strong>Payment Session Flow</strong></h2>\n<ol>\n<li><p>Your server sends a request to the Create Purchase API with customer, product, and redirect details.</p>\n</li>\n<li><p>Paybomb validates the request and creates a new payment session.</p>\n</li>\n<li><p>A unique purchaseId is generated for the session.</p>\n</li>\n<li><p>The payment session remains in the CREATED state until payment details are submitted.</p>\n</li>\n<li><p>The purchaseId is used to continue the payment flow via S2S APIs.</p>\n</li>\n</ol>\n<h1 id=\"card-payments\"><strong>Card Payments</strong></h1>\n<p>Card payments enable customers to pay online using debit or credit cards issued by card networks such as Visa, Mastercard, and others. During a card payment , the customer’s card details are submitted securely and sent through the payment processor , card network, and issuing bank to determine whether the transaction can be authorized.</p>\n<h3 id=\"card-payment-checks-include\">Card payment checks include:</h3>\n<ul>\n<li><p>Card validity and available balance</p>\n</li>\n<li><p>Risk and fraud assessment</p>\n</li>\n<li><p>Authorization by the issuing bank</p>\n</li>\n</ul>\n<p>Depending on the security requirements, region, and risk profile, a card payment can be processed as either:</p>\n<ul>\n<li><p><strong>2D (Non-3DS) payment</strong></p>\n</li>\n<li><p><strong>3D Secure (3DS) payment</strong></p>\n</li>\n</ul>\n<h2 id=\"2d-non-3ds-payments\"><strong>2D (non-3DS) Payments</strong></h2>\n<p>2D payments are standard card transactions that do not include an additional cardholder authentication step by issuing bank. Authorization is based on the card details and internal risk checks performed by the payment processor and issuer.</p>\n<h3 id=\"2d-payment-flow\"><strong>2D Payment Flow</strong></h3>\n<ul>\n<li><p>The customer provide card details (card number, expiry, cvv)</p>\n</li>\n<li><p>The transaction is authorized or declined by the issuing bank</p>\n</li>\n<li><p>The customer is directly redirected to the final outcome URL</p>\n</li>\n</ul>\n<h3 id=\"characteristics\">Characteristics</h3>\n<ul>\n<li><p>Faster checkout experience</p>\n</li>\n<li><p>Lower protection against fraud and chargebacks</p>\n</li>\n<li><p>No callback URL generated</p>\n</li>\n<li><p>No 3D Secure authentication</p>\n</li>\n</ul>\n<h3 id=\"typical-use-case\"><strong>Typical Use Case</strong></h3>\n<ul>\n<li><p>Low-risk transactions</p>\n</li>\n<li><p>Trusted customers</p>\n</li>\n<li><p>Regions or scenarios where 3DS is not mandatory</p>\n</li>\n</ul>\n<h2 id=\"3d-secure-3ds-payments\"><strong>3D Secure (3DS) Payments</strong></h2>\n<p>3D secure (3DS) Payments add an extra layer of security by requiring the cardholder to be authenticated by issuing bank. This helps reduce fraud and protects merchants against certain types of chargebacks.</p>\n<h3 id=\"3ds-payment-flow\"><strong>3DS Payment Flow</strong></h3>\n<ul>\n<li><p>The transaction is evaluated by the card network and issuing bank</p>\n</li>\n<li><p>Based on risk assessment, the transaction proceeds through either a Frictionless or Challenge flow</p>\n</li>\n<li><p>After authentication, the transaction is authorized or declined</p>\n</li>\n<li><p>The customer is redirected to the appropriate URL</p>\n</li>\n</ul>\n<h2 id=\"3ds-authentication-flows\"><strong>3DS Authentication Flows</strong></h2>\n<h3 id=\"3d-secure-challenge-flow\"><strong>3D Secure Challenge Flow</strong></h3>\n<ul>\n<li><p>The customer is redirected to the issuer’s ACS (Access Control Server)</p>\n</li>\n<li><p>The cardholder must authenticate (OTP, biometric, or password)</p>\n</li>\n<li><p>After authentication, the customer is redirected to the appropriate URL</p>\n</li>\n</ul>\n<p>3DS payments provide higher security, better fraud prevention, and improved compliance with regulatory requirements such as PSD2 (Second Payment Service Directive).</p>\n<h3 id=\"3d-secure-frictionless-flow\"><strong>3D Secure Frictionless Flow</strong></h3>\n<ul>\n<li><p>No user interaction is required</p>\n</li>\n<li><p>Authentication is completed automatically in the background</p>\n</li>\n<li><p>The customer is directly redirected to the appropriate URL</p>\n</li>\n</ul>\n<h2 id=\"2d-vs-3d-secure---comparison-table\"><strong>2D vs 3D Secure - Comparison Table</strong></h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Feature</th>\n<th>2D (Non-3DS) Payments</th>\n<th>3D Secure (3DS) Payments</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Cardholder authentication</td>\n<td>Not required</td>\n<td>Required (Frictionless or Challenge)</td>\n</tr>\n<tr>\n<td>User interaction</td>\n<td>Not required</td>\n<td>Required only in Challenge flow</td>\n</tr>\n<tr>\n<td>Security level</td>\n<td>Standard</td>\n<td>High</td>\n</tr>\n<tr>\n<td>Fraud protection</td>\n<td>Limited</td>\n<td>Strong</td>\n</tr>\n<tr>\n<td>Chargeback liability shift</td>\n<td>No</td>\n<td>Yes (subject to scheme rules)</td>\n</tr>\n<tr>\n<td>Callback URL</td>\n<td>Not generated</td>\n<td>Generated when authentication is required</td>\n</tr>\n<tr>\n<td>Redirect handling</td>\n<td>Direct redirect to final URL</td>\n<td>Redirect after authentication</td>\n</tr>\n<tr>\n<td>Checkout speed</td>\n<td>Faster</td>\n<td>Slightly slower (Challenge flow only)</td>\n</tr>\n<tr>\n<td>Regulatory compliance</td>\n<td>Not always sufficient</td>\n<td>Helps meet PSD2 and similar regulations</td>\n</tr>\n<tr>\n<td>Typical use case</td>\n<td>Low-risk transactions</td>\n<td>Medium to high-risk transactions</td>\n</tr>\n</tbody>\n</table>\n</div><h1 id=\"required-configuration\"><strong>Required configuration</strong></h1>\n<p>To successfully create a payment session, the following must be provided:</p>\n<ul>\n<li><p>Customer information (name, email, location)</p>\n</li>\n<li><p>Purchase details (currency and products)</p>\n</li>\n<li><p>A valid brand_id</p>\n</li>\n<li><p>Redirect URLs to handle the final transaction outcome:</p>\n<ul>\n<li><p>success_redirect</p>\n</li>\n<li><p>pending_redirect</p>\n</li>\n<li><p>failure_redirect</p>\n</li>\n</ul>\n</li>\n</ul>\n<p>These redirect URLs are mandatory and are used later during 2D or 3D Secure flows.</p>\n<h2 id=\"redirect-handling\"><strong>Redirect Handling</strong></h2>\n<p>After successful background authentication, the user is redirected to one of the following URLs, which must be configured during the Purchase Creation step:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Redirect URL</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>success_redirect</td>\n<td>Payment completed successfully</td>\n</tr>\n<tr>\n<td>pending_redirect</td>\n<td>Payment is still under processing</td>\n</tr>\n<tr>\n<td>failure_redirect</td>\n<td>Payment failed or was declined</td>\n</tr>\n</tbody>\n</table>\n</div><p>The final redirect depends on the authorization and authentication outcome returned by the issuer.</p>\n<h1 id=\"api-used-for-card-payment\"><strong>API Used for Card Payment</strong></h1>\n<p>| <a href=\"https://docs.google.com/document/d/1MilHvtokUqxMGBXH63qgdYkHUJXuSr3f0_VPDkHtgdQ/edit?pli=1&amp;tab=t.1nd7mvcmvmby\"><b>POST /api/v1/purchases</b></a> |</p>\n<h2 id=\"step-1-transaction-initiation--create-a-purchase\">Step 1: Transaction Initiation – Create a Purchase</h2>\n<h3 id=\"overview\"><strong>Overview</strong></h3>\n<p>To begin a transaction, a Purchase must first be created in the system. This is done by initiating a purchase request that registers all required transaction details and prepares the system for further processing.</p>\n<p>This step applies equally to both 2D and non-2D transactions and follows the same flow regardless of transaction type.</p>\n<h3 id=\"purchase-creation-process\">Purchase Creation Process</h3>\n<ol>\n<li><p>A purchase is initiated by sending a POST request to the purchase creation endpoint ({baseURL}/purchase/).</p>\n</li>\n<li><p>During this step, the system validates the request and creates a Purchase record.</p>\n</li>\n<li><p>Once the Purchase is successfully created, the system generates a unique purchaseId, which is required for subsequent server-to-server operations.</p>\n</li>\n</ol>\n<h3 id=\"mandatory-redirect-urls\"><strong>Mandatory Redirect URLs</strong></h3>\n<p>To successfully create a Purchase, the following redirect URLs must be defined and must contain valid URLs:</p>\n<ul>\n<li><p>success_redirect<br />  Redirects the customer after a successful transaction.</p>\n</li>\n<li><p>pending_redirect<br />  Redirects the customer when the transaction remains in a pending or processing state.</p>\n</li>\n<li><p>failure_redirect<br />  Redirects the customer if the transaction fails.</p>\n</li>\n</ul>\n<h3 id=\"merchantref-merchant-reference\"><strong>merchantRef (Merchant Reference)</strong></h3>\n<p>Although not mandatory, the merchantRef parameter is strongly recommended for all merchants.</p>\n<h3 id=\"purpose-and-benefits\"><strong>Purpose and Benefits</strong></h3>\n<ol>\n<li><p><strong>Prevention of Duplicate Transactions</strong></p>\n<ul>\n<li><p>merchantRef acts as a unique merchant-defined reference.</p>\n</li>\n<li><p>If a subsequent purchase request is sent using the same merchantRef, the system identifies it as a duplicate and prevents accidental repeat transactions.</p>\n</li>\n</ul>\n</li>\n<li><p><strong>Transaction Retrieval and Recovery</strong></p>\n<ul>\n<li><p>If the purchase creation response times out or the purchaseId is not received,<br />  the merchant can use merchantRef to retrieve the corresponding transaction details.</p>\n</li>\n<li><p>This ensures reliable tracking and reconciliation even when immediate responses are unavailable.</p>\n</li>\n</ul>\n</li>\n</ol>\n<h3 id=\"system-behavior-without-merchantref\"><strong>System Behavior Without merchantRef</strong></h3>\n<ul>\n<li><p>If merchantRef is not provided, the platform automatically assigns an internal purchaseId.</p>\n</li>\n<li><p>This internally generated purchaseId then becomes the sole reference for that transaction.</p>\n</li>\n</ul>\n<h3 id=\"purchase-creation-outcome\"><strong>Purchase Creation Outcome</strong></h3>\n<ul>\n<li><p>On successful creation of a Purchase:</p>\n<ul>\n<li><p>The system returns a purchaseId.</p>\n</li>\n<li><p>This purchaseId uniquely identifies the transaction within the platform.</p>\n</li>\n</ul>\n</li>\n</ul>\n<h2 id=\"step-2-server-to-server-s2s-processing\"><strong>Step 2: Server-to-Server (S2S) Processing</strong></h2>\n<p>After receiving the purchaseId, merchants must proceed with the server-to-server (S2S) call using the following pattern:</p>\n<p>This call is required to continue processing the transaction securely on the server side.</p>\n<p>| <strong>p/{purchaseId}/?s2s=true</strong> |</p>\n<h2 id=\"step-3-transaction-flows-after-calling-callback_url\">Step 3: Transaction Flows After Calling callback_url</h2>\n<p>After the callback URL is invoked, the transaction can proceed through one of the following three flows:</p>\n<h3 id=\"3d-secure-challenge-flow-1\"><strong>3D Secure Challenge Flow</strong></h3>\n<ul>\n<li><p>The user is redirected to the ACS (Access Control Server) page of the issuing bank.</p>\n</li>\n<li><p>The cardholder is required to complete authentication (e.g., OTP, biometric, or password).</p>\n</li>\n<li><p>After successful or failed authentication, the user is redirected to one of the URLs configured during the Purchase Creation API:</p>\n<ul>\n<li><p>Success_redirect</p>\n</li>\n<li><p>Pending_redirect</p>\n</li>\n<li><p>failure_redirect</p>\n</li>\n</ul>\n</li>\n</ul>\n<p>The final redirect depends on the transaction outcome.</p>\n<h3 id=\"3d-secure-frictionless-flow-1\"><strong>3D Secure Frictionless Flow</strong></h3>\n<p>The 3D Secure Frictionless Flow is a streamlined authentication process where the cardholder does not need to perform any additional action. The authentication is completed automatically in the background based on risk assessment performed by the card network and the issuing bank.</p>\n<p>This flow is designed to deliver a fast and seamless checkout experience while still complying with 3D Secure regulations.</p>\n<h4 id=\"when-frictionless-flow-occurs\"><strong>When Frictionless Flow Occurs</strong></h4>\n<p>A transaction may qualify for the frictionless flow when:</p>\n<ul>\n<li><p>The transaction amount is considered low risk</p>\n</li>\n<li><p>The issuing bank trusts the merchant and transaction context</p>\n</li>\n<li><p>Accurate device and browser information is provided</p>\n</li>\n<li><p>The cardholder has a positive transaction history</p>\n</li>\n</ul>\n<p><strong>Note</strong>: The final decision to apply frictionless authentication is made solely by the issuing bank.</p>\n<p><strong>Important:</strong></p>\n<ul>\n<li><p>Calling the callback_url is mandatory for all transactions returning a 202 response.</p>\n</li>\n<li><p>All redirect URLs must be predefined during the Purchase Creation step.</p>\n</li>\n<li><p>Merchants should ensure proper handling of all three redirect outcomes to deliver a seamless user experience.</p>\n</li>\n</ul>\n<h1 id=\"operational-flow\"><strong>Operational Flow</strong></h1>\n<ol>\n<li><p>The merchant submits the card payment request using the Server-to-Server (S2S) API.</p>\n</li>\n<li><p>Paybomb sends the transaction details to the card network and issuing bank for 3D Secure evaluation.</p>\n</li>\n<li><p>The issuing bank determines that no challenge is required based on:</p>\n<ul>\n<li><p>Cardholder risk profile</p>\n</li>\n<li><p>Transaction amount</p>\n</li>\n<li><p>Device and browser data</p>\n</li>\n<li><p>Merchant trust level</p>\n</li>\n</ul>\n</li>\n<li><p>Authentication is successfully completed in the background without redirecting the user to an authentication (ACS) page.</p>\n</li>\n<li><p>Once authentication and authorization are completed, the user is automatically redirected to the appropriate URL configured during the Purchase Creation API.</p>\n</li>\n</ol>\n<h1 id=\"http-response-codes\"><strong>HTTP Response Codes</strong></h1>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Code</th>\n<th>Triggering Event</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>200</td>\n<td>Request processed successfully</td>\n</tr>\n<tr>\n<td>202</td>\n<td>Request accepted and processing is pending</td>\n</tr>\n<tr>\n<td>400</td>\n<td>Bad request – invalid data provided or required data is missing</td>\n</tr>\n<tr>\n<td>401</td>\n<td>Unauthorized request – invalid or missing authentication credentials</td>\n</tr>\n<tr>\n<td>404</td>\n<td>Resource or page not found</td>\n</tr>\n<tr>\n<td>405</td>\n<td>Method not allowed (unsupported HTTP method such as GET or POST)</td>\n</tr>\n<tr>\n<td>415</td>\n<td>Unsupported media type</td>\n</tr>\n<tr>\n<td>422</td>\n<td>Unprocessable content – required data is missing or invalid</td>\n</tr>\n<tr>\n<td>429</td>\n<td>Too many requests – rate limit exceeded</td>\n</tr>\n<tr>\n<td>500</td>\n<td>Internal server error</td>\n</tr>\n</tbody>\n</table>\n</div><p>Please see the <a href=\"https://\">Status Code</a> section for further details.</p>\n<p>If the response code is 202, upon receiving the response body, redirect the customer to the callback_url provided in the response.</p>\n<p>If the card requires 3D Secure verification, the user will be redirected to a verification or challenge screen by the card issuing bank. After successful user verification, the user will be redirected to the success URL provided in the <code>/purchase</code> API from Step 1.</p>\n<p>If, for any reason, the transaction is unsuccessful, the user will be redirected the failure URL provided in the /purchase API from Step 1.</p>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"4d4fe764-bc73-4703-8dc1-d4dcfb65f948"}},{"listen":"test","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"42faccbf-d26f-4957-affe-308628f4e63b"}}],"_postman_id":"01819b93-c4c4-4e77-b7f4-b02d62c70a84"},{"name":"APIs","item":[{"name":"Purchase","id":"3e401596-9ca1-4640-89aa-7469f8dba264","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[]},"isInherited":false},"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"client\": {\r\n        \"email\": \"example@paybomb.tech\",\r\n        \"country\": \"IN\",\r\n        \"city\": \"123\",\r\n        \"stateCode\": \"ca\",\r\n        \"street_address\": \"test test\",\r\n        \"zip_code\": \"234567\",\r\n        \"phone\": \"+91 9999999999\"\r\n    },\r\n    \"purchase\": {\r\n        \"products\": [\r\n            {\r\n                \"name\": \"dk\",\r\n                \"price\": \"10\"\r\n            }\r\n        ]\r\n    },\r\n    \"status\": \"created\",\r\n    \"brand_id\": \"bd69e8a5-adcf-40de-9e43-2b87cb129a5e \",\r\n    \"merchantRef\": \"d9db7ec0-f94c-4a9d-8883-54c19c222d81\",\r\n    \"success_redirect\": \"https://your.success.redirect.com\",\r\n    \"pending_redirect\": \"https://your.pending.redirect.com\",\r\n    \"failure_redirect\": \"https://your.failure.redirect.com\",\r\n    \"success_callback\": \"https://your.success.callback.com\",\r\n    \"failure_callback\": \"https://your.failure.callback.com\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/purchases","description":"<p>To Initiate a payment, the very first call to make is <code>/purchases</code> with the required data in the request body.</p>\n<p>To generate a Purchase, you are required to provide the <code>Brand ID</code> (in the request body) and <code>API key</code> (in the header) Both can be located in the Dashboard section of your merchant account login.</p>\n<p>The request body structure is shown on the request body of the example request shown here.</p>\n<p>The following (see table below) are the mandatory parameters that are required to create a purchase request.</p>\n<h3 id=\"mandatory-parameters-in-the-request-body\"><strong>Mandatory parameters in the request body:</strong></h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Notes</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>client.email</td>\n<td>The customer's email.</td>\n</tr>\n<tr>\n<td>client.city</td>\n<td>The customer's city.</td>\n</tr>\n<tr>\n<td>client.country</td>\n<td>ISO-3166 Country Code. Must be upper case. Example “SG” (Alpha2)</td>\n</tr>\n<tr>\n<td>client.stateCode</td>\n<td>Example “AL”, “XZ”. Must be in upper case.</td>\n</tr>\n<tr>\n<td>Client.street_address</td>\n<td>The customer's address.</td>\n</tr>\n<tr>\n<td>client.zip_code</td>\n<td>The customer's ZIP or postal code. If country=US, zip format must be NNNNN or NNNNN-NNNN.</td>\n</tr>\n<tr>\n<td>purchase.currency</td>\n<td>ISO 4217 code for currency you want to send the transaction in.  <br />  <br />Please note, the currency has to be enabled by the account manager for your account.</td>\n</tr>\n<tr>\n<td>purchase.products</td>\n<td>An object which contains the list of products which the customer is buying.</td>\n</tr>\n<tr>\n<td>purchase.products.name</td>\n<td>The name of the product.</td>\n</tr>\n<tr>\n<td>purchase.products.price</td>\n<td>Price in decimal format.  <br />example 1:  <br />EUR 5 , should be sent as 5.00  <br />  <br />example 2:  <br />USD 10 and 37 cents , should be sent as 10.37</td>\n</tr>\n<tr>\n<td>brand_id</td>\n<td>Obtain from Dashboard section of your merchant account login.</td>\n</tr>\n<tr>\n<td>success_redirect</td>\n<td>URL to send the user if the transactions is successful.</td>\n</tr>\n<tr>\n<td>pending_redirect</td>\n<td>URL to send the user if the transactions is in pending.</td>\n</tr>\n<tr>\n<td>failure_redirect</td>\n<td>URL to send the user if the transactions is unsuccessful.</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"essential-optional-parameters\">Essential Optional Parameters</h2>\n<h3 id=\"merchantref\">merchantRef</h3>\n<p>The <code>merchantRef</code> parameter, although not mandatory, is strongly advised for merchants to specify. Its inclusion offers two significant advantages for the merchant:</p>\n<ol>\n<li><p><strong>Prevention of Duplicate Requests:</strong> When a <code>merchantRef</code> is utilized, it acts as a unique identifier. This means that if a second purchase request is made using the same <code>merchantRef</code> (reference number), the system will recognize it and prevent duplicate transactions from occurring. This prevents unintended or duplicate purchases.</p>\n</li>\n<li><p><strong>Facilitation of Transaction Retrieval:</strong> In situations where the response from the initial purchase request times out or the 'purchaseId' isn't received, having the <code>merchantRef</code> allows the merchant to retrieve detailed transaction information. This ensures they can track and access the specific purchase details related to that reference, even if the immediate response was not received.</p>\n</li>\n</ol>\n<p>However, if the merchant does not specify the 'merchantRef' parameter, the platform will automatically assign and use an internal 'purchaseId' as a reference for that transaction.</p>\n<p>Upon successul create on a Purchase you'd get a <code>\"purchaseId\"</code> . Use this ID for the next step in Server to server call by calling <code>p/{purchaseId}/?s2s=true .</code></p>\n<h3 id=\"paymentmethod\">paymentMethod</h3>\n<p>The <code>paymentMethod</code> parameter identifies which payment solution merchant wants to use to perform a transaction. If parameter is provided, than Paybomb will perform direct payment with the selected payment method instead of loading Paybomb URL.</p>\n<h3 id=\"errors\">Errors</h3>\n<p>If there are any errors then it'll be in the format of :</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"message\": \"descriptive error message\",\n    \"code\": \"error_code\"\n}\n\n</code></pre>\n<h3 id=\"possible-error-messages\">Possible Error Messages</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Error Messages</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Allowed Limit for this card for particular time period has been consumed</td>\n</tr>\n<tr>\n<td>some Mandatory Parameter are missing</td>\n</tr>\n<tr>\n<td>Invalid format of Date_of_Birth [allowed format: yyyy-mm-dd]</td>\n</tr>\n<tr>\n<td>Invalid Email Format</td>\n</tr>\n<tr>\n<td>Please submit Valid Alpha2 Country Code Ex:(AF,IN) in \\\"country\\\" parameter</td>\n</tr>\n<tr>\n<td>Please pass Valid State Code</td>\n</tr>\n<tr>\n<td>Please pass valid street address in \\\"street_address\\\" parameter</td>\n</tr>\n<tr>\n<td>Please pass valid city name in \\\"city\\\" parameter</td>\n</tr>\n<tr>\n<td>Please pass valid postal Code name in \\\"zip_code\\\" parameter</td>\n</tr>\n<tr>\n<td>You are not Allowed for Live Transaction</td>\n</tr>\n<tr>\n<td>Merchant Limit is not set</td>\n</tr>\n<tr>\n<td>Minimum amount is not set for this merchant</td>\n</tr>\n<tr>\n<td>Brand not found !</td>\n</tr>\n<tr>\n<td>Your charges setting is incomplete .Plese Contact to Administrator.</td>\n</tr>\n<tr>\n<td>Only {{currencyCode}} currency is allowed.</td>\n</tr>\n<tr>\n<td>Transaction amount must be equal or greater to minimum trans amount</td>\n</tr>\n<tr>\n<td>Invalid_Parameter  <br />You'd usually get it when one or more mandatory parameters are not present in the request.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["purchases"],"host":["https://app.paybomb.tech/api/v1"],"query":[],"variable":[]}},"response":[{"id":"8589dabd-2b5f-4d23-a17c-0577ca3449b1","name":"Purchase","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text","disabled":true}],"body":{"mode":"raw","raw":"{\r\n    \"client\": {\r\n        \"email\": \"example@paybomb.tech\",\r\n        \"country\": \"IN\",\r\n        \"city\": \"123\",\r\n        \"stateCode\": \"ca\",\r\n        \"street_address\": \"test test\",\r\n        \"zip_code\": \"234567\",\r\n        \"phone\": \"9999999999\"\r\n    },\r\n    \"purchase\": {\r\n        \"currency\": \"USD\",\r\n        \"products\": [\r\n            {\r\n                \"name\": \"product name\",\r\n                \"price\": \"10\"\r\n            }\r\n        ]\r\n    },\r\n    \"merchantRef\": \"d9db7ec0-f94c-4a9d-8883-54c19c222d81\",\r\n    \"status\": \"created\",\r\n    \"brand_id\": \"bd69e8a5-adcf-40de-9e43-2b87cb129a5e \",\r\n    \"success_redirect\": \"https://your.success.redirect.com\",\r\n    \"pending_redirect\": \"https://your.pending.redirect.com\",\r\n    \"failure_redirect\": \"https://your.failure.redirect.com\",\r\n    \"success_callback\": \"https://your.success.callback.com\",\r\n    \"failure_callback\": \"https://your.failure.callback.com\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/purchases"},"status":"Accepted","code":202,"_postman_previewlanguage":"json","header":[{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"X-Frame-Options","value":"DENY"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Date","value":"Thu, 13 Jul 2023 17:22:14 GMT"},{"key":"Keep-Alive","value":"timeout=60"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{\n    \"purchaseId\": \"64b032c3c6dccf7d329d9e7e\",\n    \"client\": {\n        \"bank_account\": \"\",\n        \"bank_code\": \"\",\n        \"email\": \"dev@paybomb.tech\",\n        \"phone\": \"\",\n        \"full_name\": \"\",\n        \"date_of_birth\": \"\",\n        \"personal_code\": \"\",\n        \"street_address\": \"test test\",\n        \"country\": \"IN\",\n        \"city\": \"123\",\n        \"zip_code\": \"234567\",\n        \"shipping_street_address\": \"\",\n        \"shipping_country\": \"\",\n        \"shipping_city\": \"\",\n        \"shipping_zip_code\": \"\",\n        \"cc\": [],\n        \"bcc\": [],\n        \"legal_name\": \"\",\n        \"brand_name\": \"\",\n        \"registration_number\": \"\",\n        \"tax_number\": \"\",\n        \"stateCode\": \"ca\"\n    },\n    \"updated_on\": 1689268934,\n    \"type\": \"purchase\",\n    \"force_recurring\": false,\n    \"created_on\": 1689268934,\n    \"purchase\": {\n        \"currency\": \"USD\",\n        \"products\": [\n            {\n                \"name\": \"dk\",\n                \"quantity\": 1,\n                \"price\": 10,\n                \"discount\": 0,\n                \"tax_percent\": \"0.00\"\n            }\n        ],\n        \"total\": 10,\n        \"language\": \"en\",\n        \"notes\": \"\",\n        \"debt\": 0,\n        \"total_formatted\": 1,\n        \"request_client_details\": [],\n        \"timezone\": \"America/Edmonton\",\n        \"email_message\": \"\"\n    },\n    \"issuer_details\": {\n        \"website\": \"\",\n        \"legal_street_address\": \"\",\n        \"legal_country\": \"\",\n        \"legal_city\": \"\",\n        \"legal_zip_code\": \"\",\n        \"bank_accounts\": [\n            {\n                \"bank_account\": \"\",\n                \"bank_code\": \"\"\n            }\n        ],\n        \"legal_name\": \"shoes\",\n        \"brand_name\": \"shoes\",\n        \"registration_number\": \"\",\n        \"tax_number\": \"\"\n    },\n    \"transaction_data\": {\n        \"payment_method\": \"\",\n        \"flow\": \"payform\",\n        \"extra\": {},\n        \"country\": \"\",\n        \"attempts\": []\n    },\n    \"status\": \"CREATED\",\n    \"status_history\": [\n        {\n            \"status\": \"created\",\n            \"timestamp\": 1689268934\n        }\n    ],\n    \"is_test\": false,\n    \"brand_id\": \"bd69e8a5-adcf-40de-9e43-2b87cb129a5e\",\n    \"is_recurring_token\": false,\n    \"reference_generated\": \"PS161\",\n    \"merchantRef\":\"d9db7ec0-f94c-4a9d-8883-54c19c222d81\",\n    \"issued\": \"2023-07-13\",\n    \"due\": 1689268934,\n    \"refund_upto\": 0,\n    \"cc_descriptor\": \"\",\n    \"refund_availability\": \"NONE\",\n    \"refundable_amount\": 0,\n    \"success_redirect\": \"https://your.success.redirect.com\",\n    \"failure_redirect\": \"https://your.failure.redirect.com\",\n    \"cancel_redirect\": \"\",\n    \"success_callback\": \"\",\n    \"platform\": \"API\",\n    \"created_from_ip\": \"149.86.53.48\",\n    \"checkout_url\": \"http://18.214.100.20/payments/64b032c3c6dccf7d329d9e7e/\",\n    \"direct_post_url\": \"http://18.214.100.20/api/v1/p/64b032c3c6dccf7d329d9e7e/\"\n}"}],"_postman_id":"3e401596-9ca1-4640-89aa-7469f8dba264"},{"name":"S2S","id":"6b16f3fb-317e-4190-92ad-bab88adf2bb6","protocolProfileBehavior":{"disableUrlEncoding":false,"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"cardholder_name\": \"dk\",\r\n    \"card_number\": \"4111111111111111\",\r\n    \"expires\": \"10/23\",\r\n    \"cvc\": \"345\",\r\n    \"remember_card\": \"on\",\r\n    \"remote_ip\": \"157.38.242.7\",\r\n    \"user_agent\": \"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36\",\r\n    \"accept_header\": \"text/html\",\r\n    \"language\": \"en-US\",\r\n    \"java_enabled\": false,\r\n    \"javascript_enabled\": true,\r\n    \"color_depth\": 24,\r\n    \"utc_offset\": 0,\r\n    \"screen_width\": 1920,\r\n    \"screen_height\": 1080\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/p/64bff4fff63e36669499e9c8/?s2s=true","description":"<p>This API would be the 2nd in sequence to call if the call to <code>/purchases/</code> was successful in step 1. and you want to do the transaction via Server-to-Server mode.</p>\n<p>The request body would contain the details of the card that's to be transacted upon.</p>\n<h3 id=\"mandatory-parameters-in-request-body\"><strong>Mandatory parameters in request body:</strong></h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th><strong>Notes</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>remote_ip</td>\n<td>IP address of the customer’s device used for transaction. Helps in fraud checks and risk scoring. Ex- 157.38.242.7</td>\n</tr>\n<tr>\n<td>user_agent</td>\n<td>Full browser and operating system details captured from HTTP header. EX- Chrome/5.0 (X11; Linux x86_64)</td>\n</tr>\n<tr>\n<td>accept_header</td>\n<td>Browser’s accepted content types (from HTTP header). Used for validating request origin and device info. EX- text/html</td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>Note:</strong><br />If you want to use token_reference for doing a card transaction, please have a look at Network Tokenisation Section.</p>\n<h3 id=\"essential-parameters-in-request-body\"><strong>Essential parameters in request body:</strong></h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th><strong>Notes</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>cardholder_name</td>\n<td>Name of the cardholder</td>\n</tr>\n<tr>\n<td>card_number</td>\n<td>The card numbers Must be 10-20 characters.</td>\n</tr>\n<tr>\n<td>expires</td>\n<td>must be greater than the current month/year.</td>\n</tr>\n<tr>\n<td>cvc</td>\n<td>3 or 4 digit</td>\n</tr>\n</tbody>\n</table>\n</div><p>**<br />Other optional parameters in request body:**</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th><strong>Notes</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>language</td>\n<td>Preferred language of the user’s browser . EX - en-US</td>\n</tr>\n<tr>\n<td>java_enabled</td>\n<td>Indicates if Java is enabled in the browser. Helps PSPs in device profiling. Ex- true/false</td>\n</tr>\n<tr>\n<td>javascript_enabled</td>\n<td>Indicates if JavaScript is enabled in the client browser. Used for 3DS or risk-based checks. Ex- true</td>\n</tr>\n<tr>\n<td>color_depth</td>\n<td>Bit depth of the display screen. Ex- 24</td>\n</tr>\n<tr>\n<td>utc_offset</td>\n<td>Difference in minutes between local time and UTC. Used for location and timezone checks. Ex- 330</td>\n</tr>\n<tr>\n<td>screen_width</td>\n<td>Width of the device screen in pixels. Used in device profiling. Ex- 1920</td>\n</tr>\n<tr>\n<td>screen_height</td>\n<td>Height of the device screen in pixels. Ex- 1080</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"successful-response\">Successful Response</h3>\n<p>If all the details are correct you'll get a 202 response with staus as Pending</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"status\": \"pending\",\n    \"callback_url\": \"https://app.paybomb.tech/payment/63bd0bf80fb42a076e8a4dd1/\",\n    \"method\": \"GET\"\n}\n\n</code></pre>\n<p>If the response code is 202, after receiving the response body, direct the customer to the callback_url provided in the response.</p>\n<h3 id=\"errors\">Errors</h3>\n<p>If there are any errors then it'll be in the format of :</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"message\": \"descriptive error message\",\n    \"code\": \"error_code\"\n}\n\n</code></pre>\n<p>Please see the Status Code section for further details.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Error Messages</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Client Ip could not be matched with Merchant Ip</td>\n</tr>\n<tr>\n<td>Invalid Card Information</td>\n</tr>\n<tr>\n<td>Card is Blocked</td>\n</tr>\n<tr>\n<td>Different Type of key used to create purchase and payment</td>\n</tr>\n<tr>\n<td>You charges setting is incomplete .Plese Contact to adminstrartor.</td>\n</tr>\n<tr>\n<td>Allowed Attempt for this Transaction has been consumed</td>\n</tr>\n<tr>\n<td>Invalid Card Expiry(Valid Format:MM/YY) must be greator than current month/year</td>\n</tr>\n<tr>\n<td>Customer profile is Blocked</td>\n</tr>\n<tr>\n<td>Customer/Card not allowed for transaction</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"90ea93fb-a535-4243-bd42-deba195cc075","id":"90ea93fb-a535-4243-bd42-deba195cc075","name":"APIs","type":"folder"}},"urlObject":{"path":["p","64bff4fff63e36669499e9c8",""],"host":["https://app.paybomb.tech/api/v1"],"query":[{"key":"s2s","value":"true"}],"variable":[]}},"response":[{"id":"7ba2f3c1-f00b-4a98-8b6f-b88e67773100","name":"Success","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"cardholder_name\": \"dk\",\r\n    \"card_number\": \"411111111111111\",\r\n    \"expires\": \"10/23\",\r\n    \"cvc\": \"345\",\r\n    \"remember_card\": \"on\",\r\n    \"remote_ip\": \"157.38.242.7\",\r\n    \"user_agent\": \"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36\",\r\n    \"accept_header\": \"text/html\",\r\n    \"language\": \"en-US\",\r\n    \"java_enabled\": false,\r\n    \"javascript_enabled\": true,\r\n    \"color_depth\": 24,\r\n    \"utc_offset\": 0,\r\n    \"screen_width\": 1920,\r\n    \"screen_height\": 1080\r\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://app.paybomb.tech/api/v1/p/64bff4fff63e36669499e9c8/?s2s=true","host":["https://app.paybomb.tech/api/v1"],"path":["p","64bff4fff63e36669499e9c8",""],"query":[{"key":"s2s","value":"true"}]}},"status":"Accepted","code":202,"_postman_previewlanguage":"json","header":[{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"X-Frame-Options","value":"DENY"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Date","value":"Thu, 13 Jul 2023 17:31:55 GMT"},{"key":"Keep-Alive","value":"timeout=60"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"pending\",\n    \"callback_url\": \"http://18.214.100.20/api/v1/payment/64b034ecc6dccf7d329d9eb3/\",\n    \"method\": \"GET\"\n}"},{"id":"8c9db494-1c42-4bb3-af19-5249bdeeb780","name":"Failure","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"cardholder_name\": \"dk\",\r\n    \"card_number\": \"4111111111111111\",\r\n    \"expires\": \"10/23\",\r\n    \"cvc\": \"345\",\r\n    \"remember_card\": \"on\",\r\n    \"remote_ip\": \"157.38.242.7\",\r\n    \"user_agent\": \"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36\",\r\n    \"accept_header\": \"text/html\",\r\n    \"language\": \"en-US\",\r\n    \"java_enabled\": false,\r\n    \"javascript_enabled\": true,\r\n    \"color_depth\": 24,\r\n    \"utc_offset\": 0,\r\n    \"screen_width\": 1920,\r\n    \"screen_height\": 1080\r\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://app.paybomb.tech/api/v1/p/64bff4fff63e36669499e9c8/?s2s=true","host":["https://app.paybomb.tech/api/v1"],"path":["p","64bff4fff63e36669499e9c8",""],"query":[{"key":"s2s","value":"true"}]}},"status":"Unauthorized","code":401,"_postman_previewlanguage":"Text","header":[{"key":"Date","value":"Tue, 06 Jan 2026 05:57:10 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"Nel","value":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}"},{"key":"X-Frame-Options","value":"ALLOW-FROM *"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"x-session-id","value":"cc434220-0bcd-42c7-9078-53503b81a221"},{"key":"Vary","value":"Origin"},{"key":"Vary","value":"Access-Control-Request-Method"},{"key":"Vary","value":"Access-Control-Request-Headers"},{"key":"Server","value":"cloudflare"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"0"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 9bce423254194c16408d5cf7234126e2.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"IAD61-P10"},{"key":"X-Amz-Cf-Id","value":"FgTt6KEGIk0CH79DQDOvB1tYb1pGfaz0ryIVmQ0CCpDShyhsJGuAkA=="},{"key":"cf-cache-status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=9SnHJOEjnd1y7hArGsRLWmrk8H9ExaiR%2Fc%2BQMWhAvHlNPYCNEjS60wTjIyODXpca0ZD9%2BalkhLJ63boMGg%2B8iI6eFtXfW%2BxwGaBP1p1ZcwpA\"}]}"},{"key":"CF-RAY","value":"9b98f9f4684505e7-IAD"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization header missing\",\n    \"code\": \"authentication_failed\"\n}"}],"_postman_id":"6b16f3fb-317e-4190-92ad-bab88adf2bb6"},{"name":"Payment (To be initiated From client browser)","id":"4e9741b2-5317-4484-a5ec-0b3302691ffe","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"{{Production}}/payment/64bff12bf63e36669499e97d/","description":"<p>This is the callback URL that is in the response object ofthe Server-to-Server Call</p>\n<p>When this URL is called from the end user's browser, the user would be redirected to the <code>success_redirect</code> or <code>failure_redirect</code> URL given by the merchant at the time of create purchase</p>\n<p>When this URL is called from the end user's browser, if card is 3DS enrolled, the user user will be redirect to a verification screen or challenge by the issuing bank and upon successful user verification, the user would be redictected to the success URL given in <code>/purchases API</code> .</p>\n<p>If for some reason the transactions is unsuccessful, the user will be redirect to failure URL given in <code>/purchases API</code> API .</p>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"90ea93fb-a535-4243-bd42-deba195cc075","id":"90ea93fb-a535-4243-bd42-deba195cc075","name":"APIs","type":"folder"}},"urlObject":{"path":["payment","64bff12bf63e36669499e97d",""],"host":["{{Production}}"],"query":[],"variable":[]}},"response":[{"id":"d87c2e88-29c1-4aa5-a42e-a316952f4f22","name":"Payment-error","originalRequest":{"method":"GET","header":[],"url":"{{StagingBaseURL}}/payment/64bfd7c9f63e36669499e779/"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"X-Frame-Options","value":"DENY"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Date","value":"Tue, 25 Jul 2023 14:12:18 GMT"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Only purchases that can be paid for can be initiated for payment.\",\n    \"code\": \"transaction_error\"\n}"}],"_postman_id":"4e9741b2-5317-4484-a5ec-0b3302691ffe"},{"name":"Get Status","id":"992cca11-db04-4310-b1e2-253266f2d8cb","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"https://app.paybomb.tech/api/v1/purchases/64bff12bf63e36669499e97d/","description":"<p>This API tells you about all the details of a purchase, including its history</p>\n<h3 id=\"mandatory\">Mandatory</h3>\n<p>you need to pass the <code>PurchaseID</code> in the API URL</p>\n<h3 id=\"possible-value-of-status\">Possible Value of Status</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Status</strong></th>\n<th><strong>Notes</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>created</td>\n<td>When Purchase order is created.</td>\n</tr>\n<tr>\n<td>paid</td>\n<td>Transaction Successful</td>\n</tr>\n<tr>\n<td>payment_in_process</td>\n<td>Payment is under Processing</td>\n</tr>\n<tr>\n<td>chargeback</td>\n<td>Payment is chargeback state</td>\n</tr>\n<tr>\n<td>refund_in_process</td>\n<td>Refund is under Processing.</td>\n</tr>\n<tr>\n<td>expired</td>\n<td>Purchase has Expired.</td>\n</tr>\n<tr>\n<td>overdue</td>\n<td>Purchase is Overdued.</td>\n</tr>\n<tr>\n<td>cancelled</td>\n<td>Purchase is cancelled.</td>\n</tr>\n<tr>\n<td>error</td>\n<td>Transaction has Failed.</td>\n</tr>\n<tr>\n<td>refunded</td>\n<td>Payment is refunded</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"response-examples\">Response Examples</h3>\n<p>In the response examples you can see instances of both <code>Paid</code> and <code>Error</code> Status purchases.</p>\n<h3 id=\"error-details\">Error Details</h3>\n<p>If there are any issues on the Purchase you can get more details from the <code>transaction_data.attempts.error</code> attribute of the response object</p>\n<h3 id=\"errors\">Errors</h3>\n<p>If there are any errors then it'll be in the format of :</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"message\": \"descriptive error message\",\n    \"code\": \"error_code\"\n}\n\n</code></pre>\n<p>Please see the Status Code section for further details.</p>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"90ea93fb-a535-4243-bd42-deba195cc075","id":"90ea93fb-a535-4243-bd42-deba195cc075","name":"APIs","type":"folder"}},"urlObject":{"path":["purchases","64bff12bf63e36669499e97d",""],"host":["https://app.paybomb.tech/api/v1"],"query":[],"variable":[]}},"response":[{"id":"c7448c9d-a384-4f03-8db4-117f5b78c72a","name":"Purchases-error","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"http://18.214.100.20/api/v1/purchases/64bfd7c9f63e36669499e779/"},"status":"Accepted","code":202,"_postman_previewlanguage":"json","header":[{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"X-Frame-Options","value":"DENY"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Date","value":"Tue, 25 Jul 2023 15:44:06 GMT"},{"key":"Keep-Alive","value":"timeout=60"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{\n    \"purchaseId\": \"64bfd7c9f63e36669499e779\",\n    \"client\": {\n        \"bank_account\": \"\",\n        \"bank_code\": \"\",\n        \"email\": \"example@paybomb.tech\",\n        \"phone\": \"\",\n        \"full_name\": \"\",\n        \"date_of_birth\": \"\",\n        \"personal_code\": \"\",\n        \"street_address\": \"test test\",\n        \"country\": \"IN\",\n        \"city\": \"123\",\n        \"zip_code\": \"234567\",\n        \"shipping_street_address\": \"\",\n        \"shipping_country\": \"\",\n        \"shipping_city\": \"\",\n        \"shipping_zip_code\": \"\",\n        \"cc\": [],\n        \"bcc\": [],\n        \"legal_name\": \"\",\n        \"brand_name\": \"\",\n        \"registration_number\": \"\",\n        \"tax_number\": \"\",\n        \"stateCode\": \"ca\"\n    },\n    \"updated_on\": 1690294251,\n    \"type\": \"purchase\",\n    \"force_recurring\": false,\n    \"created_on\": 1690294220,\n    \"purchase\": {\n        \"currency\": \"USD\",\n        \"products\": [\n            {\n                \"name\": \"dk\",\n                \"quantity\": 1,\n                \"price\": 100,\n                \"discount\": 0,\n                \"tax_percent\": \"0.00\"\n            }\n        ],\n        \"total\": 100,\n        \"language\": \"en\",\n        \"notes\": \"\",\n        \"debt\": 0,\n        \"total_formatted\": 1,\n        \"request_client_details\": [],\n        \"timezone\": \"America/Edmonton\",\n        \"email_message\": \"\"\n    },\n    \"issuer_details\": {\n        \"website\": \"\",\n        \"legal_street_address\": \"\",\n        \"legal_country\": \"\",\n        \"legal_city\": \"\",\n        \"legal_zip_code\": \"\",\n        \"bank_accounts\": [\n            {\n                \"bank_account\": \"\",\n                \"bank_code\": \"\"\n            }\n        ],\n        \"legal_name\": \"shoes\",\n        \"brand_name\": \"shoes\",\n        \"registration_number\": \"\",\n        \"tax_number\": \"\"\n    },\n    \"transaction_data\": {\n        \"payment_method\": \"\",\n        \"flow\": \"payform\",\n        \"extra\": {\n            \"expiry_month\": \"10\",\n            \"amount\": 100,\n            \"card_issuer\": \"1-800-432-3117\",\n            \"masked_pan\": \"411111XXXXXX1111\",\n            \"card_brand\": \"VISA\",\n            \"card_issuer_country\": \"US\",\n            \"cardholder_name\": \"dk\",\n            \"expiry_year\": \"23\"\n        },\n        \"country\": \"\",\n        \"attempts\": [\n            {\n                \"client_ip\": \"149.86.53.48\",\n                \"type\": \"execute\",\n                \"payment_method\": \"VISA\",\n                \"flow\": \"payform\",\n                \"successful\": false,\n                \"country\": \"US\",\n                \"processing_time\": 1690294279,\n                \"extra\": {\n                    \"expiry_month\": \"10\",\n                    \"amount\": 100,\n                    \"card_issuer\": \"1-800-432-3117\",\n                    \"masked_pan\": \"411111XXXXXX1111\",\n                    \"card_brand\": \"VISA\",\n                    \"card_issuer_country\": \"US\",\n                    \"cardholder_name\": \"dk\",\n                    \"expiry_year\": \"23\"\n                },\n                \"error\": {\n                    \"message\": \"Transaction Failed\",\n                    \"code\": \"transaction_error\"\n                }\n            }\n        ]\n    },\n    \"status\": \"ERROR\",\n    \"status_history\": [\n        {\n            \"status\": \"created\",\n            \"timestamp\": 1690294220\n        },\n        {\n            \"status\": \"pending_execute\",\n            \"timestamp\": 1690294251\n        },\n        {\n            \"status\": \"error\",\n            \"timestamp\": 1690294299\n        },\n        {\n            \"status\": \"viewed\",\n            \"timestamp\": 1690294382\n        }\n    ],\n    \"viewedOn\": 1690299845,\n    \"is_test\": false,\n    \"brand_id\": \"bd69e8a5-adcf-40de-9e43-2b87cb129a5e\",\n    \"send_receipt\": false,\n    \"is_recurring_token\": false,\n    \"skip_capture\": false,\n    \"reference_generated\": \"PS188\",\n    \"issued\": \"2023-07-25\",\n    \"due\": 1690294220,\n    \"refund_upto\": 0,\n    \"cc_descriptor\": \"\",\n    \"refund_availability\": \"NONE\",\n    \"refundable_amount\": 0,\n    \"success_redirect\": \"https://google.com\",\n    \"failure_redirect\": \"https://yahoo.com\",\n    \"cancel_redirect\": \"\",\n    \"success_callback\": \"\",\n    \"platform\": \"API\",\n    \"created_from_ip\": \"149.86.53.48\",\n    \"checkout_url\": \"http://18.214.100.20/payments/64bfd7c9f63e36669499e779/\",\n    \"direct_post_url\": \"http://18.214.100.20/api/v1/p/64bfd7c9f63e36669499e779/\"\n}"},{"id":"1fa60c14-f85b-4b06-9e89-eda4288033b0","name":"Purchases - success","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"http://18.214.100.20/api/v1/purchases/64bfdb7df63e36669499e82f/"},"status":"Accepted","code":202,"_postman_previewlanguage":"json","header":[{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"X-Frame-Options","value":"DENY"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Date","value":"Tue, 25 Jul 2023 15:45:29 GMT"},{"key":"Keep-Alive","value":"timeout=60"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{\n    \"purchaseId\": \"64bfdb7df63e36669499e82f\",\n    \"client\": {\n        \"bank_account\": \"\",\n        \"bank_code\": \"\",\n        \"email\": \"example@paybomb.tech\",\n        \"phone\": \"\",\n        \"full_name\": \"\",\n        \"date_of_birth\": \"\",\n        \"personal_code\": \"\",\n        \"street_address\": \"test test\",\n        \"country\": \"IN\",\n        \"city\": \"123\",\n        \"zip_code\": \"234567\",\n        \"shipping_street_address\": \"\",\n        \"shipping_country\": \"\",\n        \"shipping_city\": \"\",\n        \"shipping_zip_code\": \"\",\n        \"cc\": [],\n        \"bcc\": [],\n        \"legal_name\": \"\",\n        \"brand_name\": \"\",\n        \"registration_number\": \"\",\n        \"tax_number\": \"\",\n        \"stateCode\": \"ca\"\n    },\n    \"updated_on\": 1690296521,\n    \"type\": \"purchase\",\n    \"force_recurring\": false,\n    \"created_on\": 1690295168,\n    \"purchase\": {\n        \"currency\": \"USD\",\n        \"products\": [\n            {\n                \"name\": \"dk\",\n                \"quantity\": 1,\n                \"price\": 9,\n                \"discount\": 0,\n                \"tax_percent\": \"0.00\"\n            }\n        ],\n        \"total\": 9,\n        \"language\": \"en\",\n        \"notes\": \"\",\n        \"debt\": 0,\n        \"total_formatted\": 1,\n        \"request_client_details\": [],\n        \"timezone\": \"America/Edmonton\",\n        \"email_message\": \"\"\n    },\n    \"payment\": {\n        \"is_outgoing\": false,\n        \"payment_type\": \"PURCHASE\",\n        \"amount\": 9,\n        \"currency\": \"USD\",\n        \"net_amount\": 9,\n        \"fee_amount\": 10.2591,\n        \"pending_amount\": 0,\n        \"pending_unfreeze_on\": null,\n        \"description\": \"\",\n        \"paid_on\": 1690295205,\n        \"remote_paid_on\": 1690295205\n    },\n    \"issuer_details\": {\n        \"website\": \"\",\n        \"legal_street_address\": \"\",\n        \"legal_country\": \"\",\n        \"legal_city\": \"\",\n        \"legal_zip_code\": \"\",\n        \"bank_accounts\": [\n            {\n                \"bank_account\": \"\",\n                \"bank_code\": \"\"\n            }\n        ],\n        \"legal_name\": \"shoes\",\n        \"brand_name\": \"shoes\",\n        \"registration_number\": \"\",\n        \"tax_number\": \"\"\n    },\n    \"transaction_data\": {\n        \"payment_method\": \"\",\n        \"flow\": \"payform\",\n        \"extra\": {\n            \"expiry_month\": \"10\",\n            \"amount\": 9,\n            \"card_issuer\": \"1-800-432-3117\",\n            \"masked_pan\": \"411111XXXXXX1111\",\n            \"card_brand\": \"VISA\",\n            \"card_issuer_country\": \"US\",\n            \"cardholder_name\": \"dk\",\n            \"expiry_year\": \"23\"\n        },\n        \"country\": \"\",\n        \"attempts\": [\n            {\n                \"client_ip\": \"149.86.53.48\",\n                \"type\": \"execute\",\n                \"payment_method\": \"VISA\",\n                \"flow\": \"payform\",\n                \"successful\": true,\n                \"country\": \"US\",\n                \"processing_time\": 1690295205,\n                \"extra\": {\n                    \"expiry_month\": \"10\",\n                    \"amount\": 9,\n                    \"card_issuer\": \"1-800-432-3117\",\n                    \"masked_pan\": \"411111XXXXXX1111\",\n                    \"card_brand\": \"VISA\",\n                    \"card_issuer_country\": \"US\",\n                    \"cardholder_name\": \"dk\",\n                    \"expiry_year\": \"23\"\n                }\n            }\n        ]\n    },\n    \"status\": \"PAID\",\n    \"status_history\": [\n        {\n            \"status\": \"created\",\n            \"timestamp\": 1690295168\n        },\n        {\n            \"status\": \"pending_execute\",\n            \"timestamp\": 1690295193\n        },\n        {\n            \"status\": \"payment_in_process\",\n            \"timestamp\": 1690295205\n        },\n        {\n            \"status\": \"paid\",\n            \"timestamp\": 1690296521\n        },\n        {\n            \"status\": \"viewed\",\n            \"timestamp\": 1690299929\n        }\n    ],\n    \"viewedOn\": 1690299929,\n    \"is_test\": false,\n    \"brand_id\": \"bd69e8a5-adcf-40de-9e43-2b87cb129a5e\",\n    \"merchantRef\":\"d9db7ec0-f94c-4a9d-8883-54c19c222d81\",\n    \"send_receipt\": false,\n    \"is_recurring_token\": false,\n    \"skip_capture\": false,\n    \"reference_generated\": \"PS192\",\n    \"issued\": \"2023-07-25\",\n    \"due\": 1690295168,\n    \"refund_upto\": 1705843623,\n    \"cc_descriptor\": \"test-cardeye\",\n    \"refund_availability\": \"NONE\",\n    \"refundable_amount\": 9,\n    \"success_redirect\": \"https://google.com\",\n    \"failure_redirect\": \"https://yahoo.com\",\n    \"cancel_redirect\": \"\",\n    \"success_callback\": \"\",\n    \"platform\": \"API\",\n    \"created_from_ip\": \"149.86.53.48\",\n    \"checkout_url\": \"http://18.214.100.20/payments/64bfdb7df63e36669499e82f/\",\n    \"direct_post_url\": \"http://18.214.100.20/api/v1/p/64bfdb7df63e36669499e82f/\"\n}"}],"_postman_id":"992cca11-db04-4310-b1e2-253266f2d8cb"},{"name":"Refund","id":"e33a0639-6037-42bf-bc1c-b3f52eaaf14f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"url":"https://app.paybomb.tech/api/v1/purchases/657af976c3fceb7beb30eeb4/refund","description":"<p>This API is used to initate refund of the purchases that have status as <code>PAID</code> can be initiated for refund</p>\n<p>Once the refund has been initiated, the status of the purchase would become <code>REFUND_IN_PROCESS</code> and once the refund has been approved by the bank, the status woud become <code>REFUNDED</code></p>\n<p>Purchase ID is <strong>mandatory</strong> for this API.</p>\n<p>Currently we don't support partial refunds.</p>\n<h3 id=\"response-examples\">Response Examples</h3>\n<p>In the response examples you can see instances of both <code>successful</code> and <code>unsuccessful</code> in refund of purchases.</p>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"90ea93fb-a535-4243-bd42-deba195cc075","id":"90ea93fb-a535-4243-bd42-deba195cc075","name":"APIs","type":"folder"}},"urlObject":{"path":["purchases","657af976c3fceb7beb30eeb4","refund"],"host":["https://app.paybomb.tech/api/v1"],"query":[],"variable":[]}},"response":[{"id":"4dfa7e5a-5f94-414e-977f-9f55618c2b08","name":"Refund - Success","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"url":"https://app.paybomb.tech/api/v1/purchases/657af976c3fceb7beb30eeb4/refund"},"status":"Accepted","code":202,"_postman_previewlanguage":"json","header":[{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"X-Frame-Options","value":"DENY"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Date","value":"Tue, 25 Jul 2023 16:33:43 GMT"},{"key":"Keep-Alive","value":"timeout=60"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{\n    \"purchaseId\": \"64bfdb7df63e36669499e82f\",\n    \"client\": {\n        \"bank_account\": \"\",\n        \"bank_code\": \"\",\n        \"email\": \"example@paybomb.tech\",\n        \"phone\": \"\",\n        \"full_name\": \"\",\n        \"date_of_birth\": \"\",\n        \"personal_code\": \"\",\n        \"street_address\": \"test test\",\n        \"country\": \"IN\",\n        \"city\": \"123\",\n        \"zip_code\": \"234567\",\n        \"shipping_street_address\": \"\",\n        \"shipping_country\": \"\",\n        \"shipping_city\": \"\",\n        \"shipping_zip_code\": \"\",\n        \"cc\": [],\n        \"bcc\": [],\n        \"legal_name\": \"\",\n        \"brand_name\": \"\",\n        \"registration_number\": \"\",\n        \"tax_number\": \"\",\n        \"stateCode\": \"ca\"\n    },\n    \"updated_on\": 1690302819,\n    \"type\": \"purchase\",\n    \"force_recurring\": false,\n    \"created_on\": 1690295168,\n    \"purchase\": {\n        \"currency\": \"USD\",\n        \"products\": [\n            {\n                \"name\": \"dk\",\n                \"quantity\": 1,\n                \"price\": 9,\n                \"discount\": 0,\n                \"tax_percent\": \"0.00\"\n            }\n        ],\n        \"total\": 9,\n        \"language\": \"en\",\n        \"notes\": \"\",\n        \"debt\": 0,\n        \"total_formatted\": 1,\n        \"request_client_details\": [],\n        \"timezone\": \"America/Edmonton\",\n        \"email_message\": \"\"\n    },\n    \"payment\": {\n        \"is_outgoing\": false,\n        \"payment_type\": \"PURCHASE\",\n        \"amount\": 9,\n        \"currency\": \"USD\",\n        \"net_amount\": 9,\n        \"fee_amount\": 10.2591,\n        \"pending_amount\": 0,\n        \"pending_unfreeze_on\": null,\n        \"description\": \"\",\n        \"paid_on\": 1690295205,\n        \"remote_paid_on\": 1690295205\n    },\n    \"issuer_details\": {\n        \"website\": \"\",\n        \"legal_street_address\": \"\",\n        \"legal_country\": \"\",\n        \"legal_city\": \"\",\n        \"legal_zip_code\": \"\",\n        \"bank_accounts\": [\n            {\n                \"bank_account\": \"\",\n                \"bank_code\": \"\"\n            }\n        ],\n        \"legal_name\": \"shoes\",\n        \"brand_name\": \"shoes\",\n        \"registration_number\": \"\",\n        \"tax_number\": \"\"\n    },\n    \"transaction_data\": {\n        \"payment_method\": \"\",\n        \"flow\": \"payform\",\n        \"extra\": {\n            \"expiry_month\": \"10\",\n            \"amount\": 9,\n            \"card_issuer\": \"1-800-432-3117\",\n            \"masked_pan\": \"411111XXXXXX1111\",\n            \"card_brand\": \"VISA\",\n            \"card_issuer_country\": \"US\",\n            \"cardholder_name\": \"dk\",\n            \"expiry_year\": \"23\"\n        },\n        \"country\": \"\",\n        \"attempts\": [\n            {\n                \"client_ip\": \"149.86.53.48\",\n                \"type\": \"execute\",\n                \"payment_method\": \"VISA\",\n                \"flow\": \"payform\",\n                \"successful\": true,\n                \"country\": \"US\",\n                \"processing_time\": 1690295205,\n                \"extra\": {\n                    \"expiry_month\": \"10\",\n                    \"amount\": 9,\n                    \"card_issuer\": \"1-800-432-3117\",\n                    \"masked_pan\": \"411111XXXXXX1111\",\n                    \"card_brand\": \"VISA\",\n                    \"card_issuer_country\": \"US\",\n                    \"cardholder_name\": \"dk\",\n                    \"expiry_year\": \"23\"\n                }\n            },\n            {\n                \"client_ip\": \"149.86.53.48\",\n                \"type\": \"refund\",\n                \"successful\": true,\n                \"processing_time\": 1690302819,\n                \"extra\": {\n                    \"amount\": 9\n                }\n            }\n        ]\n    },\n    \"status\": \"REFUNDED\",\n    \"status_history\": [\n        {\n            \"status\": \"created\",\n            \"timestamp\": 1765294731\n        },\n        {\n            \"status\": \"pending_execute\",\n            \"timestamp\": 1765294744\n        },\n        {\n            \"status\": \"payment_in_process\",\n            \"timestamp\": 1765294754\n        },\n        {\n            \"status\": \"paid\",\n            \"timestamp\": 1765297331\n        },\n        {\n            \"status\": \"refunded\",\n            \"timestamp\": 1765624009\n        }\n    ],\n    \"viewedOn\": 1690299929,\n    \"is_test\": false,\n    \"brand_id\": \"bd69e8a5-adcf-40de-9e43-2b87cb129a5e\",\n    \"send_receipt\": false,\n    \"is_recurring_token\": false,\n    \"skip_capture\": false,\n    \"reference_generated\": \"PS192\",\n    \"issued\": \"2023-07-25\",\n    \"due\": 1690295168,\n    \"refund_upto\": 1705843623,\n    \"cc_descriptor\": \"test-cardeye\",\n    \"refund_availability\": \"NONE\",\n    \"refundable_amount\": 0,\n    \"success_redirect\": \"https://google.com\",\n    \"failure_redirect\": \"https://yahoo.com\",\n    \"cancel_redirect\": \"\",\n    \"success_callback\": \"\",\n    \"platform\": \"API\",\n    \"created_from_ip\": \"149.86.53.48\",\n    \"checkout_url\": \"http://18.214.100.20/payments/64bfdb7df63e36669499e82f/\",\n    \"direct_post_url\": \"http://18.214.100.20/api/v1/p/64bfdb7df63e36669499e82f/\"\n}"},{"id":"cf7ee07e-1079-4869-919c-a7cc2fab47cd","name":"Refund - Pending","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"url":"https://app.paybomb.tech/api/v1/purchases/657af976c3fceb7beb30eeb4/refund"},"status":"Accepted","code":202,"_postman_previewlanguage":"json","header":[{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"X-Frame-Options","value":"DENY"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Date","value":"Tue, 25 Jul 2023 16:33:43 GMT"},{"key":"Keep-Alive","value":"timeout=60"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{\n    \"purchaseId\": \"64bfdb7df63e36669499e82f\",\n    \"client\": {\n        \"bank_account\": \"\",\n        \"bank_code\": \"\",\n        \"email\": \"example@paybomb.tech\",\n        \"phone\": \"\",\n        \"full_name\": \"\",\n        \"date_of_birth\": \"\",\n        \"personal_code\": \"\",\n        \"street_address\": \"test test\",\n        \"country\": \"IN\",\n        \"city\": \"123\",\n        \"zip_code\": \"234567\",\n        \"shipping_street_address\": \"\",\n        \"shipping_country\": \"\",\n        \"shipping_city\": \"\",\n        \"shipping_zip_code\": \"\",\n        \"cc\": [],\n        \"bcc\": [],\n        \"legal_name\": \"\",\n        \"brand_name\": \"\",\n        \"registration_number\": \"\",\n        \"tax_number\": \"\",\n        \"stateCode\": \"ca\"\n    },\n    \"updated_on\": 1690302819,\n    \"type\": \"purchase\",\n    \"force_recurring\": false,\n    \"created_on\": 1690295168,\n    \"purchase\": {\n        \"currency\": \"USD\",\n        \"products\": [\n            {\n                \"name\": \"dk\",\n                \"quantity\": 1,\n                \"price\": 9,\n                \"discount\": 0,\n                \"tax_percent\": \"0.00\"\n            }\n        ],\n        \"total\": 9,\n        \"language\": \"en\",\n        \"notes\": \"\",\n        \"debt\": 0,\n        \"total_formatted\": 1,\n        \"request_client_details\": [],\n        \"timezone\": \"America/Edmonton\",\n        \"email_message\": \"\"\n    },\n    \"payment\": {\n        \"is_outgoing\": false,\n        \"payment_type\": \"PURCHASE\",\n        \"amount\": 9,\n        \"currency\": \"USD\",\n        \"net_amount\": 9,\n        \"fee_amount\": 10.2591,\n        \"pending_amount\": 0,\n        \"pending_unfreeze_on\": null,\n        \"description\": \"\",\n        \"paid_on\": 1690295205,\n        \"remote_paid_on\": 1690295205\n    },\n    \"issuer_details\": {\n        \"website\": \"\",\n        \"legal_street_address\": \"\",\n        \"legal_country\": \"\",\n        \"legal_city\": \"\",\n        \"legal_zip_code\": \"\",\n        \"bank_accounts\": [\n            {\n                \"bank_account\": \"\",\n                \"bank_code\": \"\"\n            }\n        ],\n        \"legal_name\": \"shoes\",\n        \"brand_name\": \"shoes\",\n        \"registration_number\": \"\",\n        \"tax_number\": \"\"\n    },\n    \"transaction_data\": {\n        \"payment_method\": \"\",\n        \"flow\": \"payform\",\n        \"extra\": {\n            \"expiry_month\": \"10\",\n            \"amount\": 9,\n            \"card_issuer\": \"1-800-432-3117\",\n            \"masked_pan\": \"411111XXXXXX1111\",\n            \"card_brand\": \"VISA\",\n            \"card_issuer_country\": \"US\",\n            \"cardholder_name\": \"dk\",\n            \"expiry_year\": \"23\"\n        },\n        \"country\": \"\",\n        \"attempts\": [\n            {\n                \"client_ip\": \"149.86.53.48\",\n                \"type\": \"execute\",\n                \"payment_method\": \"VISA\",\n                \"flow\": \"payform\",\n                \"successful\": true,\n                \"country\": \"US\",\n                \"processing_time\": 1690295205,\n                \"extra\": {\n                    \"expiry_month\": \"10\",\n                    \"amount\": 9,\n                    \"card_issuer\": \"1-800-432-3117\",\n                    \"masked_pan\": \"411111XXXXXX1111\",\n                    \"card_brand\": \"VISA\",\n                    \"card_issuer_country\": \"US\",\n                    \"cardholder_name\": \"dk\",\n                    \"expiry_year\": \"23\"\n                }\n            },\n            {\n                \"client_ip\": \"149.86.53.48\",\n                \"type\": \"refund\",\n                \"successful\": true,\n                \"processing_time\": 1690302819,\n                \"extra\": {\n                    \"amount\": 9\n                }\n            }\n        ]\n    },\n    \"status\": \"REFUND_IN_PROCESS\",\n    \"status_history\": [\n        {\n            \"status\": \"created\",\n            \"timestamp\": 1690295168\n        },\n        {\n            \"status\": \"pending_execute\",\n            \"timestamp\": 1690295193\n        },\n        {\n            \"status\": \"payment_in_process\",\n            \"timestamp\": 1690295205\n        },\n        {\n            \"status\": \"paid\",\n            \"timestamp\": 1690296521\n        },\n        {\n            \"status\": \"viewed\",\n            \"timestamp\": 1690299929\n        },\n        {\n            \"status\": \"refund_in_process\",\n            \"timestamp\": 1690302819\n        }\n    ],\n    \"viewedOn\": 1690299929,\n    \"is_test\": false,\n    \"brand_id\": \"bd69e8a5-adcf-40de-9e43-2b87cb129a5e\",\n    \"send_receipt\": false,\n    \"is_recurring_token\": false,\n    \"skip_capture\": false,\n    \"reference_generated\": \"PS192\",\n    \"issued\": \"2023-07-25\",\n    \"due\": 1690295168,\n    \"refund_upto\": 1705843623,\n    \"cc_descriptor\": \"test-cardeye\",\n    \"refund_availability\": \"NONE\",\n    \"refundable_amount\": 0,\n    \"success_redirect\": \"https://google.com\",\n    \"failure_redirect\": \"https://yahoo.com\",\n    \"cancel_redirect\": \"\",\n    \"success_callback\": \"\",\n    \"platform\": \"API\",\n    \"created_from_ip\": \"149.86.53.48\",\n    \"checkout_url\": \"http://18.214.100.20/payments/64bfdb7df63e36669499e82f/\",\n    \"direct_post_url\": \"http://18.214.100.20/api/v1/p/64bfdb7df63e36669499e82f/\"\n}"},{"id":"7852feae-cff6-46a3-8072-79fa0f2c7caf","name":"Refund - Error","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"url":"https://app.paybomb.tech/api/v1/purchases/657af976c3fceb7beb30eeb4/refund"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"X-Frame-Options","value":"DENY"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Date","value":"Thu, 13 Jul 2023 17:49:58 GMT"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Only Purchases with `status == (paid)` can be refunded.\",\n    \"code\": \"transaction_error\"\n}"}],"_postman_id":"e33a0639-6037-42bf-bc1c-b3f52eaaf14f"},{"name":"Payment Methods","id":"e5fa5b65-1938-4ecc-8453-8b91585d361e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"url":"https://app.paybomb.tech/api/v1/payment_methods?brand_id=aff0471b-e37d-4e76-9dee-d235063bf276","description":"<p>This API gives back the list of Payment methods available for a brand.</p>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"90ea93fb-a535-4243-bd42-deba195cc075","id":"90ea93fb-a535-4243-bd42-deba195cc075","name":"APIs","type":"folder"}},"urlObject":{"path":["payment_methods"],"host":["https://app.paybomb.tech/api/v1"],"query":[{"key":"brand_id","value":"aff0471b-e37d-4e76-9dee-d235063bf276"}],"variable":[]}},"response":[{"id":"1badeb39-e34c-47f2-b5a5-07795163693f","name":"Payment Methods - Error","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"url":{"raw":"https://app.paybomb.tech/api/v1/payment_methods?brand_id=aff0471b-e37d-4e76-9dee-d235063bf276","host":["https://app.paybomb.tech/api/v1"],"path":["payment_methods"],"query":[{"key":"brand_id","value":"aff0471b-e37d-4e76-9dee-d235063bf276"}]}},"status":"Unauthorized","code":401,"_postman_previewlanguage":"Text","header":[{"key":"Date","value":"Thu, 07 Aug 2025 10:48:58 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"Nel","value":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}"},{"key":"X-Frame-Options","value":"ALLOW-FROM *"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Vary","value":"Origin"},{"key":"Vary","value":"Access-Control-Request-Method"},{"key":"Vary","value":"Access-Control-Request-Headers"},{"key":"Server","value":"cloudflare"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-Xss-Protection","value":"1; mode=block"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 1e5d213252e38a8aa2e2a927fd3c3754.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"IAD55-P8"},{"key":"X-Amz-Cf-Id","value":"Uv3p02pbXBomVNE_FH3o2ezRXrqvTAr9etg7HAKsVUuUi_8Gvf-ecg=="},{"key":"Cf-Cache-Status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=%2BlRerjanFZR0Fh4fFP1DM51iCxavbwesIYz%2FiBfbqbOF5YopeuJBxoMy5kdhHS3%2B%2FyNAacKQzKUv%2FzyXT4gfSV78ugg1iMBiIlmatHtRFg%3D%3D\"}]}"},{"key":"CF-RAY","value":"96b63463da73093a-IAD"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"_all_\": [\n        {\n            \"message\": \"Authorization header missing\",\n            \"code\": \"authentication_failed\"\n        }\n    ]\n}"},{"id":"a80cdf0e-34e3-4bde-b2c7-38808f0706a7","name":"Payment Method- Success","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"url":{"raw":"https://app.paybomb.tech/api/v1/payment_methods?brand_id=555c458b-e737-4905-adb2-2451d37cbb","host":["https://app.paybomb.tech/api/v1"],"path":["payment_methods"],"query":[{"key":"brand_id","value":"555c458b-e737-4905-adb2-2451d37cbb"}]}},"status":"Accepted","code":202,"_postman_previewlanguage":"Text","header":[{"key":"Date","value":"Tue, 09 Sep 2025 08:04:28 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"Vary","value":"Origin"},{"key":"Vary","value":"Access-Control-Request-Method"},{"key":"Vary","value":"Access-Control-Request-Headers"},{"key":"Server","value":"cloudflare"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Frame-Options","value":"ALLOW-FROM *"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Nel","value":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}"},{"key":"Report-To","value":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=PoGnHzy1YxgyVIthM1PXA54R6F7GXZydfD3kEWXJ%2BfS8vqK1BSV2kQ7%2FcLQCX%2FyIPxxfOymqmqTum2vAWfB9UeDg9tjww39Rt9OJVyQrrwNtZZaWMA%3D%3D\"}]}"},{"key":"cf-cache-status","value":"DYNAMIC"},{"key":"CF-RAY","value":"97c52ccb09290668-IAD"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"available_payment_methods\": [\n        \"MASTER\",\n        \"visa\",\n        \"jcb\",\n        \"amex\",\n        \"CRYPTO-BRIDGE\",\n        \"FawryPay\",\n        \"INTERAC-E-TRANSFER\",\n        \"INTERAC-REQUEST-MONEY\",\n        \"MOBILEMONEY\",\n        \"NEOSURF\",\n        \"PAYID\",\n        \"PIX\",\n        \"SPEI\",\n        \"THIRDPARTY-UPI\",\n        \"discover\",\n        \"BANKTRANSFER\",\n        \"VIRTUAL-IBAN\",\n        \"UPI-COLLECT\",\n        \"UPI-QR\",\n        \"VIRTUAL-ACCOUNT\",\n        \"DINERS\",\n        \"NETBANKING\"\n    ],\n    \"by_country\": {\n        \"any\": [\n            \"MASTER\",\n            \"VISA\",\n            \"JCB\",\n            \"AMEX\",\n            \"CRYPTO-BRIDGE\",\n            \"FawryPay\",\n            \"INTERAC-E-TRANSFER\",\n            \"INTERAC-REQUEST-MONEY\",\n            \"MOBILEMONEY\",\n            \"NEOSURF\",\n            \"PAYID\",\n            \"PIX\",\n            \"SPEI\",\n            \"THIRDPARTY-UPI\",\n            \"DISCOVER\",\n            \"BANKTRANSFER\",\n            \"VIRTUAL-IBAN\",\n            \"UPI-COLLECT\",\n            \"UPI-QR\",\n            \"VIRTUAL-ACCOUNT\",\n            \"DINERS\",\n            \"NETBANKING\"\n        ]\n    },\n    \"country_names\": {\n        \"any\": \"Other\"\n    },\n    \"names\": {\n        \"NETBANKING\": \"NETBANKING\",\n        \"AMEX\": \"AMEX\",\n        \"MASTER\": \"Mastercard\",\n        \"CRYPTO-BRIDGE\": \"CRYPTO-BRIDGE\",\n        \"PAYID\": \"PAYID\",\n        \"SPEI\": \"SPEI\",\n        \"DISCOVER\": \"DISCOVER\",\n        \"JCB\": \"JCB\",\n        \"VISA\": \"Visa\",\n        \"NEOSURF\": \"NEOSURF\",\n        \"INTERAC-E-TRANSFER\": \"INTERAC-E-TRANSFER\",\n        \"THIRDPARTY-UPI\": \"THIRDPARTY-UPI\",\n        \"VIRTUAL-IBAN\": \"VIRTUAL-IBAN\",\n        \"BANKTRANSFER\": \"BANKTRANSFER\",\n        \"DINERS\": \"DINERS\",\n        \"INTERAC-REQUEST-MONEY\": \"INTERAC-REQUEST-MONEY\",\n        \"UPI-COLLECT\": \"UPI-COLLECT\",\n        \"UPI-QR\": \"UPI-QR\",\n        \"MOBILEMONEY\": \"MOBILEMONEY\",\n        \"FawryPay\": \"FawryPay\",\n        \"VIRTUAL-ACCOUNT\": \"VIRTUAL-ACCOUNT\",\n        \"PIX\": \"PIX\"\n    },\n    \"card_methods\": [\n        \"MASTER\",\n        \"VISA\",\n        \"JCB\",\n        \"AMEX\",\n        \"DISCOVER\"\n    ]\n}"}],"_postman_id":"e5fa5b65-1938-4ecc-8453-8b91585d361e"},{"name":"Cancel","id":"7208aef5-7d0f-4b90-9c85-4977325d3847","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"url":"https://app.paybomb.tech/api/v1/purchases/64bff556f63e36669499e9d3/cancel","description":"<p>Cancels an in-progress or completed purchase transaction, preventing further processing or reversing the authorization hold. Use this endpoint to void a transaction that has not yet been settled to the merchant's account.</p>\n<p><strong>When to use:</strong></p>\n<ul>\n<li><p><strong>Post-creation cancellation:</strong> Cancel a purchase immediately after it has been created via the Purchase API, before the customer completes the payment flow.</p>\n</li>\n<li><p><strong>Pre-redirect cancellation:</strong> Cancel a transaction after completing the server-to-server (S2S) call but before redirecting the cardholder to the <code>callbackURL</code>. This is useful when your backend validation logic determines the transaction should not proceed (e.g., inventory check failure, fraud flag, duplicate order detection).</p>\n</li>\n</ul>\n<p>Purchase ID is <strong>mandatory</strong> for this API.</p>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"90ea93fb-a535-4243-bd42-deba195cc075","id":"90ea93fb-a535-4243-bd42-deba195cc075","name":"APIs","type":"folder"}},"urlObject":{"path":["purchases","64bff556f63e36669499e9d3","cancel"],"host":["https://app.paybomb.tech/api/v1"],"query":[],"variable":[]}},"response":[{"id":"e9e792d4-5ba5-487f-9920-08cb811aafa8","name":"Success","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"http://18.214.100.20/api/v1/purchases/64bff4fff63e36669499e9c8/cancel"},"status":"Accepted","code":202,"_postman_previewlanguage":"json","header":[{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"X-Frame-Options","value":"DENY"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Date","value":"Tue, 25 Jul 2023 16:15:35 GMT"},{"key":"Keep-Alive","value":"timeout=60"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{\n    \"purchaseId\": \"64bff4fff63e36669499e9c8\",\n    \"client\": {\n        \"bank_account\": \"\",\n        \"bank_code\": \"\",\n        \"email\": \"example@paybomb.tech\",\n        \"phone\": \"\",\n        \"full_name\": \"\",\n        \"date_of_birth\": \"\",\n        \"personal_code\": \"\",\n        \"street_address\": \"test test\",\n        \"country\": \"IN\",\n        \"city\": \"123\",\n        \"zip_code\": \"234567\",\n        \"shipping_street_address\": \"\",\n        \"shipping_country\": \"\",\n        \"shipping_city\": \"\",\n        \"shipping_zip_code\": \"\",\n        \"cc\": [],\n        \"bcc\": [],\n        \"legal_name\": \"\",\n        \"brand_name\": \"\",\n        \"registration_number\": \"\",\n        \"tax_number\": \"\",\n        \"stateCode\": \"ca\"\n    },\n    \"updated_on\": 1690301735,\n    \"type\": \"purchase\",\n    \"force_recurring\": false,\n    \"created_on\": 1690301698,\n    \"purchase\": {\n        \"currency\": \"USD\",\n        \"products\": [\n            {\n                \"name\": \"dk\",\n                \"quantity\": 1,\n                \"price\": 9,\n                \"discount\": 0,\n                \"tax_percent\": \"0.00\"\n            }\n        ],\n        \"total\": 9,\n        \"language\": \"en\",\n        \"notes\": \"\",\n        \"debt\": 0,\n        \"total_formatted\": 1,\n        \"request_client_details\": [],\n        \"timezone\": \"America/Edmonton\",\n        \"email_message\": \"\"\n    },\n    \"issuer_details\": {\n        \"website\": \"\",\n        \"legal_street_address\": \"\",\n        \"legal_country\": \"\",\n        \"legal_city\": \"\",\n        \"legal_zip_code\": \"\",\n        \"bank_accounts\": [\n            {\n                \"bank_account\": \"\",\n                \"bank_code\": \"\"\n            }\n        ],\n        \"legal_name\": \"shoes\",\n        \"brand_name\": \"shoes\",\n        \"registration_number\": \"\",\n        \"tax_number\": \"\"\n    },\n    \"transaction_data\": {\n        \"payment_method\": \"\",\n        \"flow\": \"payform\",\n        \"extra\": {},\n        \"country\": \"\",\n        \"attempts\": []\n    },\n    \"status\": \"CANCELLED\",\n    \"status_history\": [\n        {\n            \"status\": \"created\",\n            \"timestamp\": 1690301698\n        },\n        {\n            \"status\": \"pending_execute\",\n            \"timestamp\": 1690301723\n        },\n        {\n            \"status\": \"cancelled\",\n            \"timestamp\": 1690301735\n        }\n    ],\n    \"is_test\": false,\n    \"brand_id\": \"bd69e8a5-adcf-40de-9e43-2b87cb129a5e\",\n    \"send_receipt\": false,\n    \"is_recurring_token\": false,\n    \"skip_capture\": false,\n    \"reference_generated\": \"PS194\",\n    \"issued\": \"2023-07-25\",\n    \"due\": 1690301698,\n    \"refund_upto\": 0,\n    \"cc_descriptor\": \"\",\n    \"refund_availability\": \"NONE\",\n    \"refundable_amount\": 0,\n    \"success_redirect\": \"https://google.com\",\n    \"failure_redirect\": \"https://yahoo.com\",\n    \"cancel_redirect\": \"\",\n    \"success_callback\": \"\",\n    \"platform\": \"API\",\n    \"created_from_ip\": \"149.86.53.48\",\n    \"checkout_url\": \"http://18.214.100.20/payments/64bff4fff63e36669499e9c8/\",\n    \"direct_post_url\": \"http://18.214.100.20/api/v1/p/64bff4fff63e36669499e9c8/\"\n}"},{"id":"7e2fe807-8124-49b5-8801-9ed2dd63ecc9","name":"Error","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"}],"url":"http://18.214.100.20/api/v1/purchases/64b034ecc6dccf7d329d9eb3/cancel"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"X-Frame-Options","value":"DENY"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Date","value":"Thu, 13 Jul 2023 17:45:30 GMT"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Only purchases that can be paid for can be canceled.\",\n    \"code\": \"transaction_error\"\n}"}],"_postman_id":"7208aef5-7d0f-4b90-9c85-4977325d3847"},{"name":"checkWhiteList","id":"1936eb04-4af8-4266-99df-8dec478438af","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"email\": \"dev@paybomb.tech\",\r\n    \"card_num\": \"5178006985381351\"\r\n  //  \"signup_date\": \"16-05-2023\",  not requered\r\n  //  \"deposit_date\": \"16-05-2023\",\r\n   // \"number_of_deposits\": 6,\r\n   \r\n        \r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/checkWhiteList","description":"<h3 id=\"overview\">Overview</h3>\n<p>Paybomb supports the concept of whitelisted cards. The merchant can send Paybomb a list of cards that are to be whitelisted. Once whitelisted, only whitelisted cards are allowed to be transacted for that merchant.</p>\n<p>The merchant can check the individual card status with this API by giving the email and card numbers of the customers.</p>\n<h3 id=\"mandatory-parameters-in-body\">Mandatory Parameters (in body)</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameters</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>email</td>\n</tr>\n<tr>\n<td>card_num</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"other-parameters\">Other parameters:</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameters</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>signup_date</td>\n</tr>\n<tr>\n<td>deposit_date</td>\n</tr>\n<tr>\n<td>number_of_deposits</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"response-examples\">Response Examples</h3>\n<p>In the response examples, you can observe both instances of verifying whether a card exists in a merchant's whitelist, one for an existing card and another for a non-existing card.</p>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"90ea93fb-a535-4243-bd42-deba195cc075","id":"90ea93fb-a535-4243-bd42-deba195cc075","name":"APIs","type":"folder"}},"urlObject":{"path":["checkWhiteList"],"host":["https://app.paybomb.tech/api/v1"],"query":[],"variable":[]}},"response":[{"id":"d0a0c793-c085-41e4-9660-abd834f40953","name":"checkWhiteList - Doesn't exists","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n      \"email\": \"dk6@dk.com\",\r\n  //  \"signup_date\": \"16-05-2023\",\r\n  //  \"deposit_date\": \"16-05-2023\",\r\n   // \"number_of_deposits\": 6,\r\n       \"card_num\": \"5555555555554444\"\r\n}","options":{"raw":{"language":"json"}}},"url":"http://18.214.100.20/api/v1/checkWhiteList"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"X-Frame-Options","value":"DENY"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"23"},{"key":"Date","value":"Thu, 13 Jul 2023 17:56:25 GMT"},{"key":"Keep-Alive","value":"timeout=60"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"NOTEXIST\"\n}"},{"id":"c2020fcf-231b-445e-b013-b17c6fe62210","name":"checkWhiteList - Exists","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"email\": \"dev@paybomb.tech\",\r\n    \"card_num\": \"5178006985381351\"\r\n  //  \"signup_date\": \"16-05-2023\",  not requered\r\n  //  \"deposit_date\": \"16-05-2023\",\r\n   // \"number_of_deposits\": 6,\r\n   \r\n        \r\n}","options":{"raw":{"language":"json"}}},"url":"https://api.paybomb.net/api/v1/checkWhiteList"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Tue, 25 Jul 2023 13:19:38 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"20"},{"key":"Connection","value":"keep-alive"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"X-Frame-Options","value":"DENY"},{"key":"X-Cache","value":"Miss from cloudfront"},{"key":"Via","value":"1.1 fe4c2207fc59dd7aa34d5b9c9e7bef06.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"LHR62-C4"},{"key":"X-Amz-Cf-Id","value":"jlhkO3uk9ZosIKb3n8d5UGa0s_yk0g6ZgyZwca4NrvzFfMpnXkSwnA=="},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=19ICPHCEH52J%2B2gKwR6R65hkypRr9yFP63OeSZ7qaZZOzI7pQC0g67Hgv9iDno43u0razeIYgP0%2FJL8kYiAUCElFZeVnd94rYn%2BYqHXKtJDt5yItEDTYHOmHjNCc2Qbs7fyu5w%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"7ec4b216b9a606f1-LHR"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"EXIST\"\n}"}],"_postman_id":"1936eb04-4af8-4266-99df-8dec478438af"},{"name":"Whitelist Upload","id":"9a451d05-18fa-4f86-a1f0-743133f3a8ad","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"POST","header":[],"body":{"mode":"formdata","formdata":[{"key":"csvFile","type":"file","fileNotInWorkingDirectoryWarning":"This file isn't in your working directory. Teammates you share this request with won't be able to use this file. To make collaboration easier you can setup your working directory in Settings.","filesNotInWorkingDirectory":["/C:/Users/HP/Desktop/Important/upladingfile/merchantwhitlist.csv"],"value":null}]},"url":"https://api.paybomb.net/api/v1/whitelist/upload/","description":"<h3 id=\"overview\">Overview</h3>\n<p>The merchant can upload a list of whitelist cards and email ids through this API. All cards successfully uploaded will be considered whitelisted and allowed for that merchant.</p>\n<h3 id=\"mandatory-parameters-in-the-request-body\">Mandatory parameters in the request body:</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>csvFile</td>\n<td>Upload a CSV file</td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>Please note:</strong></p>\n<ol>\n<li><p>CSV file should contain the following headers (both mandatory)</p>\n<ol>\n<li><p>card_number</p>\n</li>\n<li><p>email_id</p>\n</li>\n</ol>\n</li>\n<li><p>CSV file should not be empty</p>\n</li>\n</ol>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-java\">public class FileUploader {\n    public static void uploadFile(String apiUrl, String filePath, String authorizationHeader) {\n        try {\n            File file = new File(filePath);\n            OkHttpClient client = new OkHttpClient();\n            RequestBody requestBody = new MultipartBody.Builder().setType(MultipartBody.FORM)\n                    .addFormDataPart(\"csvFile\", file.getName(), RequestBody.create(MediaType.parse(\"text/csv\"), file))\n                    .build();\n            Request request = new Request.Builder().url(apiUrl).post(requestBody)\n                    .addHeader(\"Authorization\", authorizationHeader).build();\n            Response response = client.newCall(request).execute();\n            if (response.code() == 202) {\n                System.out.println(\"File uploaded successfully!\");\n                System.out.println(\"Response: \" + response.body().string());\n            } else {\n                System.out.println(\"File upload failed.\");\n                System.out.println(\"Status: \" + response.code());\n                System.out.println(\"Error: \" + response.body().string());\n            }\n        } catch (IOException e) {\n            e.printStackTrace();\n        }\n    }\n    public static void main(String[] args) {\n        String apiUrl = \"https://{{base_url}}/api/v1/whitelist/upload\";\n        String filePath = \"whitelist.csv.file.path\";\n        String authorizationHeader = \"Bearer YOUR API KEY\";\n        uploadFile(apiUrl, filePath, authorizationHeader);\n    }\n}\n\n</code></pre>\n","urlObject":{"protocol":"https","path":["api","v1","whitelist","upload",""],"host":["api","paybomb","net"],"query":[],"variable":[]}},"response":[{"id":"e593b6ac-e85a-4172-a7ce-bf54de4d9217","name":"Whitelist Upload success","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"multipart/form-data; boundary=<calculated when request is sent>","disabled":true}],"body":{"mode":"formdata","formdata":[{"key":"csvFile","type":"file","fileNotInWorkingDirectoryWarning":"This file isn't in your working directory. Teammates you share this request with won't be able to use this file. To make collaboration easier you can setup your working directory in Settings.","filesNotInWorkingDirectory":["/C:/Users/HP/Desktop/Important/upladingfile/merchantwhitlist.csv"],"src":[]}]},"url":"https://api.paybomb.net/api/v1/whitelist/upload/"},"status":"Accepted","code":202,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Fri, 14 Jun 2024 09:10:47 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v4?s=bIgUFhs3TU2505qZe4IpSLiaJtI2gsplNDvsVWdKl76AWQdcisezEHOW6t%2BxTCj%2Bxs%2B23gnSeMCWrqwG0CYQONFHXhXb9ZHNtIYMuHWzvjLhVEChIX%2BYpODoLqzs9OP4r5q%2F9ABSXBs%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"893930730b8b0c3f-MRS"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"totalRecords\": 3,\n    \"totalApproved\": 3,\n    \"status\": \"success\"\n}"},{"id":"00e42eaa-365d-4cad-98aa-00aef5eb789c","name":"Whitelist Upload failure","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"multipart/form-data; boundary=<calculated when request is sent>","disabled":true}],"body":{"mode":"formdata","formdata":[{"key":"csvFile","type":"file","fileNotInWorkingDirectoryWarning":"This file isn't in your working directory. Teammates you share this request with won't be able to use this file. To make collaboration easier you can setup your working directory in Settings.","filesNotInWorkingDirectory":["/C:/Users/HP/Desktop/Important/upladingfile/merchantwhitlist.csv"],"src":[]}]},"url":"https://api.paybomb.net/api/v1/whitelist/upload/"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Fri, 14 Jun 2024 09:11:50 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v4?s=9tel4sXa6ymyhRDTyNC%2B%2Bg2Msz1MivhgHbawlLF7JvTAgfonvRaas8MQeMtVVK95cziZLoZUKaThXJOAAeZW6iZ6fqlK5flpZjGxKwInEyKzZJr9JLDSQbNt5Um%2BK4zdbMZfkHV2seg%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"893931f998280c3f-MRS"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization header missing\",\n    \"code\": \"authentication_failed\",\n    \"status\": \"fail\"\n}"}],"_postman_id":"9a451d05-18fa-4f86-a1f0-743133f3a8ad"},{"name":"PayOut","id":"26518286-bbc7-4c36-9e9c-d584039d3994","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"client\": {\n        \"email\": \"rahul@gmail.com\",\n        \"country\": \"GB\",\n        \"city\": \"London\",\n        \"stateCode\": \"QLD\",\n        \"full_name\": \"Rahul Jain\",\n        \"street_address\": \"10 New Burlington Street Apt. 214\",\n        \"zip_code\": \"W1S 3BE\",\n        \"phone\": \"+44 9876543210\",\n        \"gender\": \"M\",\n        \"date_of_birth\": \"1970-07-10\"\n    },\n    \"purpose\": \"Testing cards payout\",\n    \"currency\": \"GBP\",\n    \"merchantRef\": \"YOUR ORDER ID\", // optional\n    \"payoutMethod\": \"PAYOUT-CARDS\",\n    \"amount\": 100.0,\n    \"success_redirect\": \"https://your.success.redirect.com\",\n    \"pending_redirect\": \"https://your.pending.redirect.com\",\n    \"failure_redirect\": \"https://your.failure.redirect.com\",\n    \"success_callback\": \"https://your.success.callback.com\",\n    \"failure_callback\": \"https://your.failure.callback.com\",\n    \"extraParam\": {\n        \"cardNumber\": \"5431240006334004\",\n        \"cardHolderName\": \"Rahul Agarwal\",\n        \"expiryYear\": \"2030\",\n        \"expiryMonth\": \"11\"\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/payout/","description":"<h2 id=\"overview\">Overview</h2>\n<p>The <strong>Original Credit Transaction (OCT)</strong>, commonly referred to as <strong>Push to Card</strong>, enables merchants to facilitate near-instantaneous fund transfers directly to a customer’s eligible Visa or Mastercard debit or credit card. Unlike traditional refund processes that can only return funds from a previous purchase, OCT allows for independent disbursements of funds to a cardholder's account.</p>\n<p>This feature is designed for high-velocity industries that require frictionless, real-time payouts, such as:</p>\n<ul>\n<li><p><strong>Gaming &amp; Betting:</strong> Real-time withdrawal of player winnings.</p>\n</li>\n<li><p><strong>Marketplaces:</strong> Payouts to sellers or service providers.</p>\n</li>\n<li><p><strong>Corporate Disbursements:</strong> Instant insurance claims, rebates, or compensation payments.</p>\n</li>\n<li><p><strong>Merchant Settlements:</strong> Faster access to processed funds for sub-merchants.</p>\n</li>\n</ul>\n<p>By utilizing the Paybomb <code>/payout</code> API with the <code>PAYOUT-CARDS</code> method, you benefit from a unified orchestration layer that handles the complexities of card network routing, ensuring high success rates and global reach while maintaining the same security standards as your standard payment integrations.</p>\n<hr />\n<h2 id=\"integration-steps\">Integration Steps</h2>\n<ol>\n<li><p><strong>Enable OCT:</strong> Ensure \"Push to Card\" permissions are enabled for your merchant account in the Paybomb Merchant Portal.</p>\n</li>\n<li><p><strong>Collect Card Details:</strong> Use a secure method to collect the recipient's card number and expiry date or can you Paybomb's cashier to do that.</p>\n</li>\n<li><p><strong>Execute Payout:</strong> Call the <code>/payout</code> endpoint with the OCT-specific payout method.</p>\n</li>\n<li><p><strong>Handle Webhooks:</strong> Listen for the <code>paid</code> or <code>failure</code> events to update your internal records.</p>\n</li>\n</ol>\n<h3 id=\"mandatory-parameters-in-the-request-body\"><strong>Mandatory parameters in the request body:</strong></h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Notes</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>client.email</td>\n<td>Yes</td>\n<td>The customer's email.</td>\n</tr>\n<tr>\n<td>client.phone</td>\n<td>Yes</td>\n<td>The customer's phone number along with the country code.  <br />Example: +91 9634088651</td>\n</tr>\n<tr>\n<td>client.city</td>\n<td>Yes</td>\n<td>The customer's city.</td>\n</tr>\n<tr>\n<td>client.country</td>\n<td>Yes</td>\n<td>ISO-3166 Country Code. Must be upper case. Example “SG” (Alpha2)</td>\n</tr>\n<tr>\n<td>client.stateCode</td>\n<td>Optional</td>\n<td>Example “AL”, “XZ”. Must be in upper case.</td>\n</tr>\n<tr>\n<td>Client.street_address</td>\n<td>Optional</td>\n<td>The customer's address.</td>\n</tr>\n<tr>\n<td>client.zip_code</td>\n<td>Optional</td>\n<td>The customer's ZIP or postal code. If country=US, zip format must be NNNNN or NNNNN-NNNN.</td>\n</tr>\n<tr>\n<td>currency</td>\n<td>Yes</td>\n<td>ISO 4217 code for currency you want to send the transaction in.  <br />  <br />Please note, the currency has to be enabled by the account manager for your account.</td>\n</tr>\n<tr>\n<td>amount</td>\n<td>Yes</td>\n<td>amount in decimal format.  <br />example 1:  <br />EUR 5 , should be sent as 5.00  <br />  <br />example 2:  <br />USD 10 and 37 cents , should be sent as 10.37</td>\n</tr>\n<tr>\n<td>payoutMethod</td>\n<td>Optional</td>\n<td>example: PAYOUT-CARDS</td>\n</tr>\n<tr>\n<td>success_redirect</td>\n<td>Yes</td>\n<td>URL to send the user if the transactions is successful.</td>\n</tr>\n<tr>\n<td>pending_redirect</td>\n<td>Yes</td>\n<td>URL to send the user if the transactions is in pending.</td>\n</tr>\n<tr>\n<td>failure_redirect</td>\n<td>Yes</td>\n<td>URL to send the user if the transactions is unsuccessful.</td>\n</tr>\n<tr>\n<td>Purpose</td>\n<td>Optional</td>\n<td>The purpose of doing a payout.</td>\n</tr>\n<tr>\n<td>extraParam.cardNumber</td>\n<td>Yes</td>\n<td>The recipient's 16-digit card number.</td>\n</tr>\n<tr>\n<td>extraParam.expiryYear</td>\n<td>Yes</td>\n<td>YYYY format (e.g., 2028).</td>\n</tr>\n<tr>\n<td>extraParam.expiryMonth</td>\n<td>Yes</td>\n<td>MM format (e.g., 05).</td>\n</tr>\n<tr>\n<td>extraParam.cardHolderName</td>\n<td>Yes</td>\n<td>The receiver's Full Name. Preferred a 2 word name with each word atleast 3 characters long.</td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>Note:</strong></p>\n<p>If the merchant is not PCI DSS compliant then they will need to use our <strong>cashier</strong> and asking the user to enter the card details there. Check the cashier section for more details. If the merchant is PCI DSS compliant then they can use the payout API and send the card details as shown above.</p>\n<p>If the merchant wants to use <strong>token_reference</strong> for doing a payout, then please have a look at the Network Tokenisation Section.</p>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"90ea93fb-a535-4243-bd42-deba195cc075","id":"90ea93fb-a535-4243-bd42-deba195cc075","name":"APIs","type":"folder"}},"urlObject":{"path":["payout",""],"host":["https://app.paybomb.tech/api/v1"],"query":[],"variable":[]}},"response":[{"id":"98bda83b-fcda-4c9b-b970-b62768757137","name":"Success","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"client\": {\r\n        \"email\": \"rahul@gmail.com\",\r\n        \"country\": \"GB\",\r\n        \"city\": \"London\",\r\n        \"stateCode\": \"QLD\",\r\n        \"full_name\": \"Rahul Jain\",\r\n        \"street_address\": \"10 New Burlington Street Apt. 214\",\r\n        \"zip_code\": \"W1S 3BE\",\r\n        \"phone\": \"+44 9876543210\",\r\n        \"gender\": \"M\",\r\n        \"date_of_birth\": \"1970-07-10\"\r\n    },\r\n    \"purpose\": \"Testing cards payout\",\r\n    \"currency\": \"GBP\",\r\n    \"merchantRef\": \"YOUR ORDER ID\", // optional\r\n    \"payoutMethod\": \"PAYOUT-CARDS\",\r\n    \"amount\": 100.0,\r\n    \"success_redirect\": \"https://your.success.redirect.com\",\r\n    \"pending_redirect\": \"https://your.pending.redirect.com\",\r\n    \"failure_redirect\": \"https://your.failure.redirect.com\",\r\n    \"success_callback\": \"https://your.success.callback.com\",\r\n    \"failure_callback\": \"https://your.failure.callback.com\",\r\n    \"extraParam\": {\r\n        \"cardNumber\": \"5431240006334004\",\r\n        \"cardHolderName\": \"Rahul Agarwal\",\r\n        \"expiryYear\": \"2030\",\r\n        \"expiryMonth\": \"11\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/payout/"},"status":"Accepted","code":202,"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\r\n    \"payoutId\": \"6977137755e0628e3600c562\",\r\n    \"client\": {\r\n        \"email\": \"rahul@gmail.com\",\r\n        \"country\": \"GB\",\r\n        \"city\": \"London\",\r\n        \"stateCode\": \"QLD\",\r\n        \"full_name\": \"Rahul Jain\",\r\n        \"street_address\": \"10 New Burlington Street Apt. 214\",\r\n        \"zip_code\": \"W1S 3BE\",\r\n        \"phone\": \"+44 9876543210\",\r\n        \"gender\": \"M\",\r\n        \"date_of_birth\": \"1970-07-10\"\r\n    },\r\n    \"updated_on\": 1769411447,\r\n    \"extraParam\": {\r\n        \"cardNumber\": \"5431240006334004\",\r\n        \"cardHolderName\": \"Rahul Agarwal\",\r\n        \"expiryYear\": \"2030\",\r\n        \"expiryMonth\": \"11\"\r\n    },\r\n    \"payoutMethod\": \"PAYOUT-CARDS\",\r\n    \"amountUnit\": \"MAJOR\",\r\n    \"amount\": 100.0,\r\n    \"errorMsg\": \"\",\r\n    \"purpose\": \"Testing cards payout\",\r\n    \"created_on\": 1769411447,\r\n    \"merchantRef\": \"YOUR ORDER ID\",\r\n    \"status\": \"PAID\",\r\n    \"status_history\": [\r\n        {\r\n            \"status\": \"created\",\r\n            \"timestamp\": 1769411447\r\n        },\r\n        {\r\n            \"status\": \"payout_in_process\",\r\n            \"timestamp\": 1769411447\r\n        },\r\n        {\r\n            \"status\": \"paid\",\r\n            \"timestamp\": 1769411447\r\n        },\r\n\r\n    ],\r\n    \"currency\": \"GBP\",\r\n    \"extraFee\": \"0\",\r\n    \"paymentOn\": 0,\r\n    \"checkout_url\": \"https://test4.paymentsclub.net/payout/092e59f94279a3742fa3715fe9a2112a/\",\r\n    \"taxAmount\": 0.0,\r\n    \"taxPercent\": 0.0,\r\n    \"success_redirect\": \"https://your.success.redirect.com\",\r\n    \"pending_redirect\": \"https://your.pending.redirect.com\",\r\n    \"failure_redirect\": \"https://your.failure.redirect.com\",\r\n    \"success_callback\": \"https://your.success.callback.com\",\r\n    \"failure_callback\": \"https://your.failure.callback.com\"\r\n    \"redirectType\": \"POST\",\r\n    \"sessionId\": \"\",\r\n    \"surcharge\": 0.0,\r\n    \"surchargeType\": \"\",\r\n    \"trxMethod\": \"CARDS\",\r\n    \"success_callback\": \"\",\r\n    \"failure_callback\": \"\"\r\n}"},{"id":"24b2f78b-5208-423a-a643-0ef19be61054","name":"Error","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"client\": {\r\n        \"email\": \"rahul@gmail.com\",\r\n        \"country\": \"GB\",\r\n        \"city\": \"London\",\r\n        \"stateCode\": \"QLD\",\r\n        \"full_name\": \"Rahul Jain\",\r\n        \"street_address\": \"10 New Burlington Street Apt. 214\",\r\n        \"zip_code\": \"W1S 3BE\",\r\n        \"phone\": \"+44 9876543210\",\r\n        \"gender\": \"M\",\r\n        \"date_of_birth\": \"1970-07-10\"\r\n    },\r\n    \"purpose\": \"Testing cards payout\",\r\n    \"currency\": \"GBP\",\r\n    \"merchantRef\": \"YOUR ORDER ID\", // optional\r\n    \"payoutMethod\": \"PAYOUT-CARDS\",\r\n    \"amount\": 100.0,\r\n    \"success_redirect\": \"https://your.success.redirect.com\",\r\n    \"pending_redirect\": \"https://your.pending.redirect.com\",\r\n    \"failure_redirect\": \"https://your.failure.redirect.com\",\r\n    \"success_callback\": \"https://your.success.callback.com\",\r\n    \"failure_callback\": \"https://your.failure.callback.com\",\r\n    \"extraParam\": {\r\n        \"cardNumber\": \"5431240006334004\",\r\n        \"cardHolderName\": \"Rahul Agarwal\",\r\n        \"expiryYear\": \"2030\",\r\n        \"expiryMonth\": \"11\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/payout/"},"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\r\n    \"payoutId\": \"6977137755e0628e3600c562\",\r\n    \"client\": {\r\n        \"email\": \"rahul@gmail.com\",\r\n        \"country\": \"GB\",\r\n        \"city\": \"London\",\r\n        \"stateCode\": \"QLD\",\r\n        \"full_name\": \"Rahul Jain\",\r\n        \"street_address\": \"10 New Burlington Street Apt. 214\",\r\n        \"zip_code\": \"W1S 3BE\",\r\n        \"phone\": \"+44 9876543210\",\r\n        \"gender\": \"M\",\r\n        \"date_of_birth\": \"1970-07-10\"\r\n    },\r\n    \"updated_on\": 1769411447,\r\n    \"extraParam\": {\r\n        \"cardNumber\": \"5431240006334004\",\r\n        \"cardHolderName\": \"Rahul Agarwal\",\r\n        \"expiryYear\": \"2030\",\r\n        \"expiryMonth\": \"11\"\r\n    },\r\n    \"payoutMethod\": \"PAYOUT-CARDS\",\r\n    \"amountUnit\": \"MAJOR\",\r\n    \"amount\": 100.0,\r\n    \"errorMsg\": \"\",\r\n    \"purpose\": \"Testing cards payout\",\r\n    \"created_on\": 1769411447,\r\n    \"merchantRef\": \"YOUR ORDER ID\",\r\n    \"status\": \"error\",\r\n    \"status_history\": [\r\n        {\r\n            \"status\": \"created\",\r\n            \"timestamp\": 1769411447\r\n        },\r\n        {\r\n            \"status\": \"error\",\r\n            \"timestamp\": 1769411447\r\n        },\r\n\r\n    ],\r\n    \"currency\": \"GBP\",\r\n    \"extraFee\": \"0\",\r\n    \"paymentOn\": 0,\r\n    \"checkout_url\": \"https://test4.paymentsclub.net/payout/092e59f94279a3742fa3715fe9a2112a/\",\r\n    \"taxAmount\": 0.0,\r\n    \"taxPercent\": 0.0,\r\n    \"success_redirect\": \"https://your.success.redirect.com\",\r\n    \"pending_redirect\": \"https://your.pending.redirect.com\",\r\n    \"failure_redirect\": \"https://your.failure.redirect.com\",\r\n    \"success_callback\": \"https://your.success.callback.com\",\r\n    \"failure_callback\": \"https://your.failure.callback.com\"\r\n    \"redirectType\": \"POST\",\r\n    \"sessionId\": \"\",\r\n    \"surcharge\": 0.0,\r\n    \"surchargeType\": \"\",\r\n    \"trxMethod\": \"BANKTRANSFER\",\r\n    \"success_callback\": \"\",\r\n    \"failure_callback\": \"\"\r\n}"}],"_postman_id":"26518286-bbc7-4c36-9e9c-d584039d3994"}],"id":"90ea93fb-a535-4243-bd42-deba195cc075","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"221f3b39-56b1-4f1c-810e-f6d5cb26aaf9"}},{"listen":"test","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"b7cbefe1-d1ca-4c8e-9d59-8c9425672933"}}],"_postman_id":"90ea93fb-a535-4243-bd42-deba195cc075","description":""}],"id":"b1d59495-e887-499f-96b9-1358c52e79c9","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"type":"text/javascript","packages":{},"exec":[""],"id":"ca558a24-913f-40df-a0ca-05290c210518"}},{"listen":"test","script":{"type":"text/javascript","packages":{},"exec":[""],"id":"b479be32-7aba-4e69-a88d-f3605660de22"}}],"_postman_id":"b1d59495-e887-499f-96b9-1358c52e79c9","description":""},{"name":"💰 APMs (Alternative Payment Methods)","item":[{"name":"🌎 Google Pay Redirect","item":[{"name":"Concepts","item":[],"id":"33d9cd54-f387-4c78-8d28-7be6bc7c41ba","description":"<h2 id=\"overview\">Overview</h2>\n<p>Google Pay enables customers to make payments on a merchant’s website or app using credit or debit cards securely stored in their Google Account. During checkout, Google Pay presents a payment sheet where customers can select their preferred card and confirm the transaction.</p>\n<p>Customers add their payment cards to the Google Pay wallet, which securely stores the card details. When making a purchase, they simply choose Google Pay as the payment method and complete the payment using a saved card—eliminating the need to enter card information repeatedly.</p>\n<hr />\n<h2 id=\"features\">Features</h2>\n<ul>\n<li><p><strong>Convenient</strong>: Customers can pay using cards already saved in Google Pay, reducing friction during checkout.</p>\n</li>\n<li><p><strong>Secure</strong>: Uses tokenization to ensure sensitive card information is never exposed during the payment flow.</p>\n</li>\n<li><p><strong>3D Secure support</strong>: The payment handle created through the integration supports 3D Secure authentication when required, enabling secure transactions.</p>\n</li>\n<li><p><strong>Wide coverage</strong>: Supported across multiple regions and currencies.</p>\n</li>\n</ul>\n<hr />\n<p>By integrating Google Pay through the <strong>Paybomb API</strong>, you can offer your customers a fast, secure, and seamless payment experience.</p>\n<hr />\n<h2 id=\"note\">Note</h2>\n<p>This is a <strong>redirection-based payment method</strong>. During the payment flow, the user is redirected to a third-party application or interface, where the Google Pay button is displayed for completing the transaction.</p>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"76da24b6-23ae-42b8-bfc0-d0fb21a4346e"}},{"listen":"test","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"c8161120-823e-4964-9c32-42693beea2ef"}}],"_postman_id":"33d9cd54-f387-4c78-8d28-7be6bc7c41ba"},{"name":"APIs","item":[{"name":"Purchases","id":"2b3ad128-9889-4cd0-a2e2-129edc8ab63f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Authorization","value":"Bearer Token"}],"body":{"mode":"raw","raw":"{\r\n    \"client\": {\r\n        \"email\": \"rahultest@gmail.com\",\r\n        \"country\": \"GB\",\r\n        \"city\": \"London\",\r\n        \"stateCode\": \"RJ\",\r\n        \"street_address\": \"10 New Burlington StreetApt. 214\",\r\n        \"zip_code\": \"W1S 3BE\",\r\n        \"date_of_birth\": \"1994-31-04\",\r\n        \"phone\": \"+91 9634088561\",\r\n        \"full_name\": \"Rahul Agarwal\"\r\n    },\r\n    \"purchase\": {\r\n        \"currency\": \"EUR\",\r\n        \"products\": [\r\n            {\r\n                \"name\": \"gaming cards \",\r\n                \"price\": 10\r\n            }\r\n        ]\r\n    },\r\n    \"brand_id\": \"your-brandid\",\r\n    \"paymentMethod\": \"GOOGLEPAY-REDIRECT\",\r\n    \"success_redirect\": \"https://your-redirect-url?issucces=true\",\r\n    \"pending_redirect\": \"https://your-redirect-url?ispending=true\",\r\n    \"failure_redirect\": \"https://your-redirect-url?isfailure=true\",\r\n    \"success_callback\": \"https://your-webhook-url\",\r\n    \"failure_callback\": \"https://your-webhook-url\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/purchases/","description":"<p>To Initiate a payment, the very first call to make is <code>/purchases</code> with the required data in the request body.</p>\n<p>To generate a Purchase, you are required to provide the <code>Brand ID</code> (in the request body) and <code>API key</code> (in the header) Both can be located in the Dashboard section of your merchant account login.</p>\n<p>The request body structure is shown on the request body of the example request shown here.</p>\n<p>The following (see table below) are the mandatory parameters that are required to create a purchase request.</p>\n<h3 id=\"parameters-in-the-request-body\"><strong>Parameters in the request body:</strong></h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Notes</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>client.full_name</td>\n<td>Conditional.  <br />But Recommended to pass the complete name of the client. Atleast 2 words recommended.</td>\n</tr>\n<tr>\n<td>client.email</td>\n<td>Conditional.  <br />But Recommended to pass a correct email id.</td>\n</tr>\n<tr>\n<td>paymentMethod</td>\n<td>Conditional.  <br />Mandatory if you are not using Paybomb Cashier. Else Non Mandatory.  <br />Value: GOOGLEPAY-REDIRECT</td>\n</tr>\n<tr>\n<td>purchase.currency</td>\n<td>Mandatory.  <br />ISO 4217 code for currency you want to send the transaction in. This should be 'BRL' for PIX.</td>\n</tr>\n<tr>\n<td>purchase.products.name</td>\n<td>Mandatory.</td>\n</tr>\n<tr>\n<td>purchase.products.price</td>\n<td>Mandatory.  <br />Price in decimal format upto 2 decimals.  <br />example 1:  <br />EUR 5 , should be sent as 5.00  <br />example 2:  <br />USD 10 and 37 cents , should be sent as 10.37</td>\n</tr>\n<tr>\n<td>brand_id</td>\n<td>Mandatory.  <br />Obtain from Dashboard section of your merchant account login.</td>\n</tr>\n<tr>\n<td>success_redirect</td>\n<td>Mandatory.  <br />URL to send the user if the transactions is successful.</td>\n</tr>\n<tr>\n<td>pending_redirect</td>\n<td>Mandatory.  <br />URL to send the user if the transactions is in progress state.</td>\n</tr>\n<tr>\n<td>failure_redirect</td>\n<td>Mandatory  <br />URL to send the user if the transactions has failed.</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"optional-parameters\">Optional Parameters</h2>\n<h3 id=\"expireinmin\">expireInMin</h3>\n<p>This parameter, when passed in the PayIn request, sets the time window within which a customer should make the Interac payment through their bank's app. If a customer doesn't complete the payment within the configured time window, the status of the payment will be marked as 'EXPIRED' in Paybomb.</p>\n<p>However, in certain cases, a payment made outside of this window could still be successful i.e. customer's account may be debited which would result in inconsistencies among Paybomb's, merchant's and customer's status of the transaction. To avoid such cases it is advised to set the expiry time limit appropriately and advise the customers to make payment within this window. However, if there is an inconsistency between the status at Paybomb and at customer's Bank, the merchant and Paybomb will reconcile the amounts during the settlement.</p>\n<h3 id=\"merchantref\">merchantRef</h3>\n<p>The <code>merchantRef</code> parameter, although not mandatory, is strongly advised for merchants to specify. Its inclusion offers two significant advantages for the merchant:</p>\n<ol>\n<li><p><strong>Prevention of Duplicate Requests:</strong> When a <code>merchantRef</code> is utilized, it acts as a unique identifier. This means that if a second purchase request is made using the same <code>merchantRef</code> (reference number), the system will recognize it and prevent duplicate transactions from occurring. This prevents unintended or duplicate purchases.</p>\n</li>\n<li><p><strong>Facilitation of Transaction Retrieval:</strong> In situations where the response from the initial purchase request times out or the 'purchaseId' isn't received, having the <code>merchantRef</code> allows the merchant to retrieve detailed transaction information. This ensures they can track and access the specific purchase details related to that reference, even if the immediate response was not received.</p>\n</li>\n</ol>\n<p>However, if the merchant does not specify the 'merchantRef' parameter, the platform will automatically assign and use an internal 'purchaseId' as a reference for that transaction.</p>\n<h3 id=\"paymentmethod\">paymentMethod</h3>\n<p>The <code>paymentMethod</code> parameter identifies which payment solution merchant wants to use to perform a transaction. If parameter is provided, then Paybomb will perform direct payment with the selected payment method instead of loading Paybomb URL.</p>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"7e4346a7-1c22-4378-bb36-3f70a3998bbd","id":"7e4346a7-1c22-4378-bb36-3f70a3998bbd","name":"APIs","type":"folder"}},"urlObject":{"path":["purchases",""],"host":["https://app.paybomb.tech/api/v1"],"query":[],"variable":[]}},"response":[{"id":"4567ae3a-99b1-4064-8507-b64301d3de1a","name":"Purchase - success","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Authorization","value":"Bearer Token"}],"body":{"mode":"raw","raw":"{\r\n    \"client\": {\r\n        \"email\": \"rahultest@gmail.com\",\r\n        \"country\": \"GB\",\r\n        \"city\": \"London\",\r\n        \"stateCode\": \"RJ\",\r\n        \"street_address\": \"10 New Burlington StreetApt. 214\",\r\n        \"zip_code\": \"W1S 3BE\",\r\n        \"date_of_birth\": \"1994-31-04\",\r\n        \"phone\": \"+91 9634088561\",\r\n        \"full_name\": \"Rahul Agarwal\"\r\n    },\r\n    \"purchase\": {\r\n        \"currency\": \"EUR\",\r\n        \"products\": [\r\n            {\r\n                \"name\": \"gaming cards \",\r\n                \"price\": 10\r\n            }\r\n        ]\r\n    },\r\n    \"brand_id\": \"your-brandid\",\r\n    \"paymentMethod\": \"GOOGLEPAY-REDIRECT\",\r\n    \"success_redirect\": \"https://your-redirect-url?issucces=true\",\r\n    \"pending_redirect\": \"https://your-redirect-url?ispending=true\",\r\n    \"failure_redirect\": \"https://your-redirect-url?isfailure=true\",\r\n    \"success_callback\": \"https://your-webhook-url\",\r\n    \"failure_callback\": \"https://your-webhook-url\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/purchases"},"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\r\n    \"purchaseId\": \"69634df44549cbd3547ac750\",\r\n    \"client\": {\r\n        \"customerId\": \"NA\",\r\n        \"email\": \"rahultest@gmail.com\",\r\n        \"phone\": \"+91 9634088561\",\r\n        \"full_name\": \"Rahul Agarwal\",\r\n        \"date_of_birth\": \"1994-31-04\",\r\n        \"street_address\": \"10 New Burlington StreetApt. 214\",\r\n        \"country\": \"GB\",\r\n        \"city\": \"London\",\r\n        \"zip_code\": \"W1S 3BE\",\r\n        \"cc\": [],\r\n        \"bcc\": [],\r\n        \"stateCode\": \"RJ\"\r\n    },\r\n    \"updated_on\": 1768115701,\r\n    \"type\": \"purchase\",\r\n    \"paymentMethod\": \"GOOGLEPAY-REDIRECT\",\r\n    \"amountUnit\": \"MAJOR\",\r\n    \"errorMsg\": \"\",\r\n    \"errorCode\": \"NA\",\r\n    \"force_recurring\": false,\r\n    \"created_on\": 1768115700,\r\n    \"merchantRef\": \"69634df44549cbd3547ac750\",\r\n    \"purchase\": {\r\n        \"currency\": \"EUR\",\r\n        \"products\": [\r\n            {\r\n                \"name\": \"gaming cards\",\r\n                \"quantity\": 1.0,\r\n                \"price\": 1.0,\r\n                \"discount\": 0,\r\n                \"tax_percent\": \"0.00\"\r\n            }\r\n        ],\r\n        \"total\": 1.0,\r\n        \"requestAmount\": 1.0,\r\n        \"language\": \"en\",\r\n        \"notes\": \"\",\r\n        \"debt\": 0,\r\n        \"total_formatted\": 1.0,\r\n        \"taxAmount\": 0.0,\r\n        \"taxPercent\": 0.0,\r\n        \"request_client_details\": [],\r\n        \"email_message\": \"\"\r\n    },\r\n    \"payment\": {\r\n        \"is_outgoing\": false,\r\n        \"payment_type\": \"PURCHASE\",\r\n        \"amount\": 1.0,\r\n        \"currency\": \"EUR\",\r\n        \"net_amount\": 1.0,\r\n        \"fee_amount\": 0.0,\r\n        \"pending_amount\": 0.0,\r\n        \"pending_unfreeze_on\": null,\r\n        \"description\": \"\",\r\n        \"paid_on\": 1768115700,\r\n        \"remote_paid_on\": 1768115700\r\n    },\r\n    \"issuer_details\": {\r\n        \"website\": \"\",\r\n        \"legal_street_address\": \"\",\r\n        \"legal_country\": \"\",\r\n        \"legal_city\": \"\",\r\n        \"legal_zip_code\": \"\",\r\n        \"bank_accounts\": [\r\n            {}\r\n        ],\r\n        \"legal_name\": \"Testing\",\r\n        \"brand_name\": \"Testing\",\r\n        \"registration_number\": \"\",\r\n        \"tax_number\": \"\"\r\n    },\r\n    \"transaction_data\": {\r\n        \"payment_method\": \"\",\r\n        \"flow\": \"payform\",\r\n        \"extra\": {\r\n            \"amount\": 1.0,\r\n            \"masked_pan\": \"GOOGLEPAY-REDIRECT\"\r\n        },\r\n        \"country\": \"\",\r\n        \"attempts\": [\r\n            {\r\n                \"client_ip\": \"183.83.53.41\",\r\n                \"type\": \"execute\",\r\n                \"payment_method\": \"GOOGLEPAY-REDIRECT\",\r\n                \"flow\": \"payform\",\r\n                \"successful\": true,\r\n                \"country\": \"GOOGLEPAY-REDIRECT\",\r\n                \"processing_time\": 1768115700,\r\n                \"extra\": {\r\n                    \"amount\": 1.0,\r\n                    \"masked_pan\": \"GOOGLEPAY-REDIRECT\"\r\n                }\r\n            }\r\n        ]\r\n    },\r\n    \"status\": \"PAYMENT_IN_PROCESS\",\r\n    \"status_history\": [\r\n        {\r\n            \"status\": \"created\",\r\n            \"timestamp\": 1768115700\r\n        },\r\n        {\r\n            \"status\": \"pending_execute\",\r\n            \"timestamp\": 1768115700\r\n        },\r\n        {\r\n            \"status\": \"payment_in_process\",\r\n            \"timestamp\": 1768115701\r\n        }\r\n    ],\r\n    \"is_test\": false,\r\n    \"brand_id\": \"59c5ed48-caf9-464a-ba54-26e1e02bc1bc\",\r\n    \"send_receipt\": false,\r\n    \"is_recurring_token\": false,\r\n    \"skip_capture\": false,\r\n    \"reference_generated\": \"PS363\",\r\n    \"issued\": \"2026-01-11\",\r\n    \"due\": 1768115700,\r\n    \"refund_upto\": 1783664101,\r\n    \"cc_descriptor\": \"\",\r\n    \"fraudScore\": \"0\",\r\n    \"trustScore\": \"1\",\r\n    \"extraFee\": \"0\",\r\n    \"pix_payload\": {},\r\n    \"payInDetails\": {},\r\n    \"paidOn\": 0,\r\n    \"receivedAmt\": 0.0,\r\n    \"taxAmount\": 0.0,\r\n    \"surcharge\": 0.0,\r\n    \"surchargeType\": \"\",\r\n    \"sessionId\": \"\",\r\n    \"refund_availability\": \"NONE\",\r\n    \"refundable_amount\": 1.0,\r\n    \"success_redirect\": \"https://your-redirect-url?issucces=true\",\r\n    \"pending_redirect\": \"https://your-redirect-url?ispending=true\",\r\n    \"failure_redirect\": \"https://your-redirect-url?isfailure=true\",\r\n    \"success_callback\": \"https://your-webhook-url\",\r\n    \"failure_callback\": \"https://your-webhook-url\"\r\n    \"platform\": \"API\",\r\n    \"created_from_ip\": \"183.83.53.41\",\r\n    \"checkout_url\": \"https://api.choicepay.ca/payments/deb852445bd4b0fa6c4587f652174ab9/\",\r\n    \"payoutProcess\": false\r\n}"},{"id":"97f642a0-8827-45ec-8ed9-aca662acfb97","name":"Purchase - failure","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Authorization","value":"Bearer Token"}],"body":{"mode":"raw","raw":"{\r\n    \"client\": {\r\n        \"email\": \"rahultest@gmail.com\",\r\n        \"country\": \"GB\",\r\n        \"city\": \"London\",\r\n        \"stateCode\": \"RJ\",\r\n        \"street_address\": \"10 New Burlington StreetApt. 214\",\r\n        \"zip_code\": \"W1S 3BE\",\r\n        \"date_of_birth\": \"1994-31-04\",\r\n        \"phone\": \"+91 9634088561\",\r\n        \"full_name\": \"Rahul Agarwal\"\r\n    },\r\n    \"purchase\": {\r\n        \"currency\": \"EUR\",\r\n        \"products\": [\r\n            {\r\n                \"name\": \"gaming cards \",\r\n                \"price\": 10\r\n            }\r\n        ]\r\n    },\r\n    \"brand_id\": \"your-brandid\",\r\n    \"paymentMethod\": \"GOOGLEPAY-REDIRECT\",\r\n    \"success_redirect\": \"https://your-redirect-url?issucces=true\",\r\n    \"pending_redirect\": \"https://your-redirect-url?ispending=true\",\r\n    \"failure_redirect\": \"https://your-redirect-url?isfailure=true\",\r\n    \"success_callback\": \"https://your-webhook-url\",\r\n    \"failure_callback\": \"https://your-webhook-url\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/purchases"},"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\r\n    \"message\": \"Error Message\",\r\n    \"code\": \"error_code\"\r\n}"}],"_postman_id":"2b3ad128-9889-4cd0-a2e2-129edc8ab63f"},{"name":"Session","id":"8344a78a-4353-4f18-84c9-3b990e3b3775","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/createSession","description":"<p><strong>OVERVIEW</strong></p>\n<p>The <code>createSession</code> API is designed to initiate a payment session for a customer after their profile has been created via the <strong>createCustomer</strong> API. The session is automatically generated at the backend on the merchant’s checkout URL. This session allows the customer to continue with their transaction without having to manually interact with the session URL, and ensures the session remains active until the payment is completed or the session expires.</p>\n<p>This API improves the user experience by reducing transaction failures and enhancing the overall payment process, thus reducing transaction churn rates.</p>\n<h3 id=\"mandatory-parameters\">Mandatory 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>Example</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>customerId</td>\n<td>String</td>\n<td>The unique ID of the customer (generated from createCustomer).</td>\n<td>6731a609b6bb5a43ad66c4a6</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"usage-flow\"><strong>Usage Flow</strong></h3>\n<ol>\n<li><p><strong>Customer completes the</strong> <strong><code>createCustomer</code></strong> <strong>API</strong>: Once the customer is created via the <code>createCustomer</code> API, the merchant proceeds to call the <code>createSession</code> API to generate a session.</p>\n</li>\n<li><p><strong>Merchant sends</strong> <strong><code>createSession</code></strong> <strong>request</strong>: The merchant sends a <code>POST</code> request to the <code>createSession</code> API with the customer’s <code>customerId</code> and the merchant’s <code>brandId</code>.</p>\n</li>\n<li><p><strong>Session created automatically on the checkout URL</strong>: Paybomb creates the session and associates it with the merchant’s checkout page. This session remains active on the backend, allowing the customer to continue the payment process without interruption.</p>\n</li>\n<li><p><strong>Customer proceeds to checkout</strong>: The customer is redirected to the checkout page as part of the merchant's payment flow, where the session is automatically validated. The session remains active for a set period, allowing the customer to complete the payment without needing to manually interact with the session URL.</p>\n</li>\n<li><p><strong>Session Expiry</strong>: The session expires after the set expiration time (<code>expiryOn</code>), ensuring the payment process is completed within the defined window. Default is 15 mins from the creation time.</p>\n</li>\n</ol>\n<hr />\n<h3 id=\"benefits\"><strong>Benefits</strong></h3>\n<ul>\n<li><p><strong>Seamless Checkout</strong>: The session URL is automatically generated and active at the backend, ensuring a smoother and uninterrupted customer experience.</p>\n</li>\n<li><p><strong>Reduced Transaction Failures</strong>: By ensuring the session remains active during the payment process, the chances of transaction failures due to session timeouts are minimized.</p>\n</li>\n<li><p><strong>Improved User Experience</strong>: The customer does not need to click on a session URL or navigate away from the page, leading to faster and more secure payment processing.</p>\n</li>\n</ul>\n","urlObject":{"path":["createSession"],"host":["https://app.paybomb.tech/api/v1"],"query":[],"variable":[]}},"response":[{"id":"2a26d7a5-92c0-482f-a444-add1c380700e","name":"Success","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Accept","value":"*/*","type":"text"},{"key":"BrandId","value":"brand_id_value","description":"it is mandatory to pass the BrandId in header for each createSession request. ","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"customerId\": \"69034a5a61b460084d20c23b\",\r\n    \"merchantRef\": \"rahultestcustomer1@paybomb.tech\", // optional\r\n    \"currency\": \"EUR\",\r\n    \"products\": [\r\n        {\r\n            \"name\": \"Product1\",\r\n            \"price\": \"10\"\r\n        },\r\n        {\r\n            \"name\": \"Product2\",\r\n            \"price\": \"12\"\r\n        }\r\n    ],\r\n    \"totalAmount\": \"22\", // optional, but if present have precedence over sum of prices.\r\n    \"paymentMethod\": \"GOOGLEPAY-REDIRECT\", //optional\r\n    \"success_redirect\": \"https://your-redirect-url?issucces=true\",\r\n    \"pending_redirect\": \"https://your-redirect-url?ispending=true\",\r\n    \"failure_redirect\": \"https://your-redirect-url?isfailure=true\",\r\n    \"success_callback\": \"https://your-webhook-url\",\r\n    \"failure_callback\": \"https://your-webhook-url\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/createSession"},"status":"OK","code":200,"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\r\n    \"sessionUrl\": \"https://api.choicepay.ca/payment-session/6963533a0a18ea65153a81e7/\",\r\n    \"brandId\": \"brand_id_value\",\r\n    \"customerId\": \"69034a5a61b460084d20c23b\",\r\n    \"sessionId\": \"6963533a0a18ea65153a81e7\",\r\n    \"expiryOn\": 1768117950,\r\n    \"createdOn\": 1768117050\r\n}"},{"id":"b5fd93db-4bd9-428d-9731-57bc5bd69886","name":"Invalid Session","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Accept","value":"*/*","type":"text"},{"key":"BrandId","value":"brand_id_value","description":"it is mandatory to pass the BrandId in header for each createSession request. ","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"customerId\": \"69034a5a61b460084d20c23b\",\r\n    \"merchantRef\": \"rahultestcustomer1@paybomb.tech\", // optional\r\n    \"currency\": \"EUR\",\r\n    \"products\": [\r\n        {\r\n            \"name\": \"Product1\",\r\n            \"price\": \"10\"\r\n        },\r\n        {\r\n            \"name\": \"Product2\",\r\n            \"price\": \"12\"\r\n        }\r\n    ],\r\n    \"totalAmount\": \"22\", // optional, but if present have precedence over sum of prices.\r\n    \"paymentMethod\": \"GOOGLEPAY-REDIRECT\", //optional\r\n    \"success_redirect\": \"https://your-redirect-url?issucces=true\",\r\n    \"pending_redirect\": \"https://your-redirect-url?ispending=true\",\r\n    \"failure_redirect\": \"https://your-redirect-url?isfailure=true\",\r\n    \"success_callback\": \"https://your-webhook-url\",\r\n    \"failure_callback\": \"https://your-webhook-url\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://api.paybomb.net/api/v1/createSession"},"status":"Bad Request","code":400,"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\r\n    \"message\": \"Customer does not exist with this Customer Id\",\r\n    \"code\": \"Customer Id is invalid\"\r\n}"}],"_postman_id":"8344a78a-4353-4f18-84c9-3b990e3b3775"},{"name":"Get Status","id":"79c53474-af6f-46df-9213-c7d659bac7a3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"url":"https://app.paybomb.tech/api/v1/purchases/{purchaseId}/","description":"<p>This API tells you about all the details of a purchase (PayIn), including its history</p>\n<h3 id=\"mandatory\">Mandatory</h3>\n<p>you need to pass the <code>PurchaseID</code> in the API URL</p>\n<h3 id=\"possible-value-of-status\">Possible Value of Status</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Status</strong></th>\n<th><strong>Notes</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>paid</td>\n<td>Transaction Successful</td>\n</tr>\n<tr>\n<td>payment_in_process</td>\n<td>Payment is under Processing</td>\n</tr>\n<tr>\n<td>expired</td>\n<td>Purchase has Expired.</td>\n</tr>\n<tr>\n<td>error</td>\n<td>Transaction has Failed.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"response-examples\">Response Examples</h3>\n<p>In the response examples you can see instances of both <code>Paid</code> and <code>Error</code> Status purchases.</p>\n<h3 id=\"error-details\">Error Details</h3>\n<p>If there are any issues on the Purchase you can get more details from the <code>transaction_data.attempts.error</code> attribute of the response object</p>\n<h3 id=\"errors\">Errors</h3>\n<p>If there are any errors then it'll be in the format of :</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"message\": \"descriptive error message\",\n    \"code\": \"error_code\"\n}\n\n</code></pre>\n<p>Please see the Status Code section for further details.</p>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"7e4346a7-1c22-4378-bb36-3f70a3998bbd","id":"7e4346a7-1c22-4378-bb36-3f70a3998bbd","name":"APIs","type":"folder"}},"urlObject":{"path":["purchases","{purchaseId}",""],"host":["https://app.paybomb.tech/api/v1"],"query":[],"variable":[]}},"response":[{"id":"b07253b9-59cd-4eff-8e75-3e01adb33d1c","name":"Purchase - success","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json"},{"key":"Authorization","value":"Bearer Token"}],"url":"https://app.paybomb.tech/api/v1/purchases/{purchaseId}/"},"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\r\n    \"purchaseId\": \"69634df44549cbd3547ac750\",\r\n    \"client\": {\r\n        \"customerId\": \"NA\",\r\n        \"email\": \"rahultest@gmail.com\",\r\n        \"phone\": \"+91 9634088561\",\r\n        \"full_name\": \"Rahul Agarwal\",\r\n        \"date_of_birth\": \"1994-31-04\",\r\n        \"street_address\": \"10 New Burlington StreetApt. 214\",\r\n        \"country\": \"GB\",\r\n        \"city\": \"London\",\r\n        \"zip_code\": \"W1S 3BE\",\r\n        \"cc\": [],\r\n        \"bcc\": [],\r\n        \"stateCode\": \"RJ\"\r\n    },\r\n    \"updated_on\": 1768115701,\r\n    \"type\": \"purchase\",\r\n    \"paymentMethod\": \"GOOGLEPAY-REDIRECT\",\r\n    \"amountUnit\": \"MAJOR\",\r\n    \"errorMsg\": \"\",\r\n    \"errorCode\": \"NA\",\r\n    \"force_recurring\": false,\r\n    \"created_on\": 1768115700,\r\n    \"merchantRef\": \"69634df44549cbd3547ac750\",\r\n    \"purchase\": {\r\n        \"currency\": \"EUR\",\r\n        \"products\": [\r\n            {\r\n                \"name\": \"gaming cards\",\r\n                \"quantity\": 1.0,\r\n                \"price\": 1.0,\r\n                \"discount\": 0,\r\n                \"tax_percent\": \"0.00\"\r\n            }\r\n        ],\r\n        \"total\": 1.0,\r\n        \"requestAmount\": 1.0,\r\n        \"language\": \"en\",\r\n        \"notes\": \"\",\r\n        \"debt\": 0,\r\n        \"total_formatted\": 1.0,\r\n        \"taxAmount\": 0.0,\r\n        \"taxPercent\": 0.0,\r\n        \"request_client_details\": [],\r\n        \"email_message\": \"\"\r\n    },\r\n    \"payment\": {\r\n        \"is_outgoing\": false,\r\n        \"payment_type\": \"PURCHASE\",\r\n        \"amount\": 1.0,\r\n        \"currency\": \"EUR\",\r\n        \"net_amount\": 1.0,\r\n        \"fee_amount\": 0.0,\r\n        \"pending_amount\": 0.0,\r\n        \"pending_unfreeze_on\": null,\r\n        \"description\": \"\",\r\n        \"paid_on\": 1768115700,\r\n        \"remote_paid_on\": 1768115700\r\n    },\r\n    \"issuer_details\": {\r\n        \"website\": \"\",\r\n        \"legal_street_address\": \"\",\r\n        \"legal_country\": \"\",\r\n        \"legal_city\": \"\",\r\n        \"legal_zip_code\": \"\",\r\n        \"bank_accounts\": [\r\n            {}\r\n        ],\r\n        \"legal_name\": \"Testing\",\r\n        \"brand_name\": \"Testing\",\r\n        \"registration_number\": \"\",\r\n        \"tax_number\": \"\"\r\n    },\r\n    \"transaction_data\": {\r\n        \"payment_method\": \"\",\r\n        \"flow\": \"payform\",\r\n        \"extra\": {\r\n            \"amount\": 1.0,\r\n            \"masked_pan\": \"GOOGLEPAY-REDIRECT\"\r\n        },\r\n        \"country\": \"\",\r\n        \"attempts\": [\r\n            {\r\n                \"client_ip\": \"183.83.53.41\",\r\n                \"type\": \"execute\",\r\n                \"payment_method\": \"GOOGLEPAY-REDIRECT\",\r\n                \"flow\": \"payform\",\r\n                \"successful\": true,\r\n                \"country\": \"GOOGLEPAY-REDIRECT\",\r\n                \"processing_time\": 1768115700,\r\n                \"extra\": {\r\n                    \"amount\": 1.0,\r\n                    \"masked_pan\": \"GOOGLEPAY-REDIRECT\"\r\n                }\r\n            }\r\n        ]\r\n    },\r\n    \"status\": \"PAID\",\r\n    \"status_history\": [\r\n        {\r\n            \"status\": \"created\",\r\n            \"timestamp\": 1768115700\r\n        },\r\n        {\r\n            \"status\": \"pending_execute\",\r\n            \"timestamp\": 1768115700\r\n        },\r\n        {\r\n            \"status\": \"payment_in_process\",\r\n            \"timestamp\": 1768115701\r\n        },\r\n        {\r\n            \"status\": \"paid\",\r\n            \"timestamp\": 1768115701\r\n        }\r\n    ],\r\n    \"is_test\": false,\r\n    \"brand_id\": \"59c5ed48-caf9-464a-ba54-26e1e02bc1bc\",\r\n    \"send_receipt\": false,\r\n    \"is_recurring_token\": false,\r\n    \"skip_capture\": false,\r\n    \"reference_generated\": \"PS363\",\r\n    \"issued\": \"2026-01-11\",\r\n    \"due\": 1768115700,\r\n    \"refund_upto\": 1783664101,\r\n    \"cc_descriptor\": \"\",\r\n    \"fraudScore\": \"0\",\r\n    \"trustScore\": \"1\",\r\n    \"extraFee\": \"0\",\r\n    \"pix_payload\": {},\r\n    \"payInDetails\": {},\r\n    \"paidOn\": 0,\r\n    \"receivedAmt\": 0.0,\r\n    \"taxAmount\": 0.0,\r\n    \"surcharge\": 0.0,\r\n    \"surchargeType\": \"\",\r\n    \"sessionId\": \"\",\r\n    \"refund_availability\": \"NONE\",\r\n    \"refundable_amount\": 1.0,\r\n    \"success_redirect\": \"https://your-redirect-url?issucces=true\",\r\n    \"pending_redirect\": \"https://your-redirect-url?ispending=true\",\r\n    \"failure_redirect\": \"https://your-redirect-url?isfailure=true\",\r\n    \"success_callback\": \"https://your-webhook-url\",\r\n    \"failure_callback\": \"https://your-webhook-url\"\r\n    \"platform\": \"API\",\r\n    \"created_from_ip\": \"183.83.53.41\",\r\n    \"checkout_url\": \"https://api.choicepay.ca/payments/deb852445bd4b0fa6c4587f652174ab9/\",\r\n    \"payoutProcess\": false\r\n}"},{"id":"8cd73b95-1ee7-4012-9ca5-2fccf71a5791","name":"Purchase - failure","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"url":"https://app.paybomb.tech/api/v1/purchases/{purchaseId}/"},"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\r\n    \"message\": \"Error Message\",\r\n    \"code\": \"error_code\"\r\n}"}],"_postman_id":"79c53474-af6f-46df-9213-c7d659bac7a3"}],"id":"7e4346a7-1c22-4378-bb36-3f70a3998bbd","description":"<p><strong>API Flow</strong></p>\n<ol>\n<li><p>The merchant initiates the purchase via the create purchase API and passing the appropriate payment method. If successful, they receive a checkout URL in the response JSON.</p>\n</li>\n<li><p>Upon utilizing the checkout URL, the user will be presented with a screen where he will be shown a button to pay via Googlepay.</p>\n</li>\n<li><p>After clicking the button, the user will see all the cards stored in the google wallet and he can choose one of the cards to make the purchase.</p>\n</li>\n<li><p>After a successful or failed payment by the end user, an appropriate webhook would be sent to the merchant. The user would also be redirected to the appropriate redirect URL.</p>\n</li>\n</ol>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"a999f83b-3939-4bb4-88aa-0cc1d2ec0d41"}},{"listen":"test","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"5423a335-c6ef-4f00-9f9d-bc28b7d487a1"}}],"_postman_id":"7e4346a7-1c22-4378-bb36-3f70a3998bbd"}],"id":"a3878bc1-74ab-47be-a82b-5694857ccca7","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"30dec301-3a2d-4639-a317-c4d19db2511c"}},{"listen":"test","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"4eb16e67-a74d-4b14-a98c-1d8a16f7d0a3"}}],"_postman_id":"a3878bc1-74ab-47be-a82b-5694857ccca7","description":""},{"name":"🌎 Apple Pay Redirect","item":[{"name":"Concepts","item":[],"id":"cf44b219-2bea-459a-bdf6-eb6134ae883d","description":"<h2 id=\"overview\">Overview</h2>\n<p>Apple Pay enables customers to make payments on a merchant’s website or app using credit or debit cards securely stored in their Apple Wallet. During checkout, Apple Pay presents a payment sheet where customers can select their preferred card and confirm the payment using <strong>Touch ID, Face ID, or their device passcode</strong>.</p>\n<p>Customers add their payment cards to Apple Wallet, which securely stores the card information. When making a purchase, they simply select Apple Pay as the payment method and complete the transaction using a saved card—eliminating the need to manually enter card details for each payment.</p>\n<hr />\n<h2 id=\"features\">Features</h2>\n<ul>\n<li><p><strong>Convenient</strong>: Customers can pay using cards already saved in Apple Pay, reducing checkout friction.</p>\n</li>\n<li><p><strong>Secure</strong>: Uses device-specific tokenization (DPAN/MPAN) to protect sensitive card data during the payment process.</p>\n</li>\n<li><p><strong>3D Secure support</strong>: The payment handle created through the integration supports 3D Secure authentication when required, ensuring secure transactions.</p>\n</li>\n<li><p><strong>Wide coverage</strong>: Supported across multiple regions and currencies.</p>\n</li>\n</ul>\n<hr />\n<p>By integrating Apple Pay through the <strong>Paybomb API</strong>, you can provide your customers with a fast, secure, and seamless payment experience.</p>\n<hr />\n<h2 id=\"note\">Note</h2>\n<p>This is a <strong>redirection-based payment method</strong>. During the payment flow, the user is redirected to a third-party application or interface, where the Apple Pay button is displayed to complete the payment.</p>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"1b7aceca-e751-4ff9-b22b-d6d0e0d7e6ef"}},{"listen":"test","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"9ca5d849-b4ce-4be2-b065-4dff0c437490"}}],"_postman_id":"cf44b219-2bea-459a-bdf6-eb6134ae883d"},{"name":"APIs","item":[{"name":"Purchases","id":"464b5ca3-ff57-43ef-9117-15f2c675f744","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Authorization","value":"Bearer Token"}],"body":{"mode":"raw","raw":"{\r\n    \"client\": {\r\n        \"email\": \"rahultest@gmail.com\",\r\n        \"country\": \"GB\",\r\n        \"city\": \"London\",\r\n        \"stateCode\": \"RJ\",\r\n        \"street_address\": \"10 New Burlington StreetApt. 214\",\r\n        \"zip_code\": \"W1S 3BE\",\r\n        \"date_of_birth\": \"1994-31-04\",\r\n        \"phone\": \"+91 9634088561\",\r\n        \"full_name\": \"Rahul Agarwal\"\r\n    },\r\n    \"purchase\": {\r\n        \"currency\": \"EUR\",\r\n        \"products\": [\r\n            {\r\n                \"name\": \"gaming cards \",\r\n                \"price\": 10\r\n            }\r\n        ]\r\n    },\r\n    \"brand_id\": \"your-brandid\",\r\n    \"paymentMethod\": \"APPLEPAY-REDIRECT\",\r\n    \"success_redirect\": \"https://your-redirect-url?issucces=true\",\r\n    \"pending_redirect\": \"https://your-redirect-url?ispending=true\",\r\n    \"failure_redirect\": \"https://your-redirect-url?isfailure=true\",\r\n    \"success_callback\": \"https://your-webhook-url\",\r\n    \"failure_callback\": \"https://your-webhook-url\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/purchases/","description":"<p>To Initiate a payment, the very first call to make is <code>/purchases</code> with the required data in the request body.</p>\n<p>To generate a Purchase, you are required to provide the <code>Brand ID</code> (in the request body) and <code>API key</code> (in the header) Both can be located in the Dashboard section of your merchant account login.</p>\n<p>The request body structure is shown on the request body of the example request shown here.</p>\n<p>The following (see table below) are the mandatory parameters that are required to create a purchase request.</p>\n<h3 id=\"parameters-in-the-request-body\"><strong>Parameters in the request body:</strong></h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Notes</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>client.full_name</td>\n<td>Conditional.  <br />But Recommended to pass the complete name of the client. Atleast 2 words recommended.</td>\n</tr>\n<tr>\n<td>client.email</td>\n<td>Conditional.  <br />But Recommended to pass a correct email id.</td>\n</tr>\n<tr>\n<td>paymentMethod</td>\n<td>Conditional.  <br />Mandatory if you are not using Paybomb Cashier. Else Non Mandatory.  <br />Value: APPLEPAY-REDIRECT</td>\n</tr>\n<tr>\n<td>purchase.currency</td>\n<td>Mandatory.  <br />ISO 4217 code for currency you want to send the transaction in. This should be 'BRL' for PIX.</td>\n</tr>\n<tr>\n<td>purchase.products.name</td>\n<td>Mandatory.</td>\n</tr>\n<tr>\n<td>purchase.products.price</td>\n<td>Mandatory.  <br />Price in decimal format upto 2 decimals.  <br />example 1:  <br />EUR 5 , should be sent as 5.00  <br />example 2:  <br />USD 10 and 37 cents , should be sent as 10.37</td>\n</tr>\n<tr>\n<td>brand_id</td>\n<td>Mandatory.  <br />Obtain from Dashboard section of your merchant account login.</td>\n</tr>\n<tr>\n<td>success_redirect</td>\n<td>Mandatory.  <br />URL to send the user if the transactions is successful.</td>\n</tr>\n<tr>\n<td>pending_redirect</td>\n<td>Mandatory.  <br />URL to send the user if the transactions is in progress state.</td>\n</tr>\n<tr>\n<td>failure_redirect</td>\n<td>Mandatory  <br />URL to send the user if the transactions has failed.</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"optional-parameters\">Optional Parameters</h2>\n<h3 id=\"expireinmin\">expireInMin</h3>\n<p>This parameter, when passed in the PayIn request, sets the time window within which a customer should make the Interac payment through their bank's app. If a customer doesn't complete the payment within the configured time window, the status of the payment will be marked as 'EXPIRED' in Paybomb.</p>\n<p>However, in certain cases, a payment made outside of this window could still be successful i.e. customer's account may be debited which would result in inconsistencies among Paybomb's, merchant's and customer's status of the transaction. To avoid such cases it is advised to set the expiry time limit appropriately and advise the customers to make payment within this window. However, if there is an inconsistency between the status at Paybomb and at customer's Bank, the merchant and Paybomb will reconcile the amounts during the settlement.</p>\n<h3 id=\"merchantref\">merchantRef</h3>\n<p>The <code>merchantRef</code> parameter, although not mandatory, is strongly advised for merchants to specify. Its inclusion offers two significant advantages for the merchant:</p>\n<ol>\n<li><p><strong>Prevention of Duplicate Requests:</strong> When a <code>merchantRef</code> is utilized, it acts as a unique identifier. This means that if a second purchase request is made using the same <code>merchantRef</code> (reference number), the system will recognize it and prevent duplicate transactions from occurring. This prevents unintended or duplicate purchases.</p>\n</li>\n<li><p><strong>Facilitation of Transaction Retrieval:</strong> In situations where the response from the initial purchase request times out or the 'purchaseId' isn't received, having the <code>merchantRef</code> allows the merchant to retrieve detailed transaction information. This ensures they can track and access the specific purchase details related to that reference, even if the immediate response was not received.</p>\n</li>\n</ol>\n<p>However, if the merchant does not specify the 'merchantRef' parameter, the platform will automatically assign and use an internal 'purchaseId' as a reference for that transaction.</p>\n<h3 id=\"paymentmethod\">paymentMethod</h3>\n<p>The <code>paymentMethod</code> parameter identifies which payment solution merchant wants to use to perform a transaction. If parameter is provided, then Paybomb will perform direct payment with the selected payment method instead of loading Paybomb URL.</p>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"fbcf6289-1ca0-4e35-9756-6ea0c5abb7a8","id":"fbcf6289-1ca0-4e35-9756-6ea0c5abb7a8","name":"APIs","type":"folder"}},"urlObject":{"path":["purchases",""],"host":["https://app.paybomb.tech/api/v1"],"query":[],"variable":[]}},"response":[{"id":"fd231098-e65d-43a8-95f6-747b2eb16e6f","name":"Purchase - success","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Authorization","value":"Bearer Token"}],"body":{"mode":"raw","raw":"{\r\n    \"client\": {\r\n        \"email\": \"rahultest@gmail.com\",\r\n        \"country\": \"GB\",\r\n        \"city\": \"London\",\r\n        \"stateCode\": \"RJ\",\r\n        \"street_address\": \"10 New Burlington StreetApt. 214\",\r\n        \"zip_code\": \"W1S 3BE\",\r\n        \"date_of_birth\": \"1994-31-04\",\r\n        \"phone\": \"+91 9634088561\",\r\n        \"full_name\": \"Rahul Agarwal\"\r\n    },\r\n    \"purchase\": {\r\n        \"currency\": \"EUR\",\r\n        \"products\": [\r\n            {\r\n                \"name\": \"gaming cards \",\r\n                \"price\": 10\r\n            }\r\n        ]\r\n    },\r\n    \"brand_id\": \"your-brandid\",\r\n    \"paymentMethod\": \"APPLEPAY-REDIRECT\",\r\n    \"success_redirect\": \"https://your-redirect-url?issucces=true\",\r\n    \"pending_redirect\": \"https://your-redirect-url?ispending=true\",\r\n    \"failure_redirect\": \"https://your-redirect-url?isfailure=true\",\r\n    \"success_callback\": \"https://your-webhook-url\",\r\n    \"failure_callback\": \"https://your-webhook-url\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/purchases"},"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\r\n    \"purchaseId\": \"69634df44549cbd3547ac750\",\r\n    \"client\": {\r\n        \"customerId\": \"NA\",\r\n        \"email\": \"rahultest@gmail.com\",\r\n        \"phone\": \"+91 9634088561\",\r\n        \"full_name\": \"Rahul Agarwal\",\r\n        \"date_of_birth\": \"1994-31-04\",\r\n        \"street_address\": \"10 New Burlington StreetApt. 214\",\r\n        \"country\": \"GB\",\r\n        \"city\": \"London\",\r\n        \"zip_code\": \"W1S 3BE\",\r\n        \"cc\": [],\r\n        \"bcc\": [],\r\n        \"stateCode\": \"RJ\"\r\n    },\r\n    \"updated_on\": 1768115701,\r\n    \"type\": \"purchase\",\r\n    \"paymentMethod\": \"APPLEPAY-REDIRECT\",\r\n    \"amountUnit\": \"MAJOR\",\r\n    \"errorMsg\": \"\",\r\n    \"errorCode\": \"NA\",\r\n    \"force_recurring\": false,\r\n    \"created_on\": 1768115700,\r\n    \"merchantRef\": \"69634df44549cbd3547ac750\",\r\n    \"purchase\": {\r\n        \"currency\": \"EUR\",\r\n        \"products\": [\r\n            {\r\n                \"name\": \"gaming cards\",\r\n                \"quantity\": 1.0,\r\n                \"price\": 1.0,\r\n                \"discount\": 0,\r\n                \"tax_percent\": \"0.00\"\r\n            }\r\n        ],\r\n        \"total\": 1.0,\r\n        \"requestAmount\": 1.0,\r\n        \"language\": \"en\",\r\n        \"notes\": \"\",\r\n        \"debt\": 0,\r\n        \"total_formatted\": 1.0,\r\n        \"taxAmount\": 0.0,\r\n        \"taxPercent\": 0.0,\r\n        \"request_client_details\": [],\r\n        \"email_message\": \"\"\r\n    },\r\n    \"payment\": {\r\n        \"is_outgoing\": false,\r\n        \"payment_type\": \"PURCHASE\",\r\n        \"amount\": 1.0,\r\n        \"currency\": \"EUR\",\r\n        \"net_amount\": 1.0,\r\n        \"fee_amount\": 0.0,\r\n        \"pending_amount\": 0.0,\r\n        \"pending_unfreeze_on\": null,\r\n        \"description\": \"\",\r\n        \"paid_on\": 1768115700,\r\n        \"remote_paid_on\": 1768115700\r\n    },\r\n    \"issuer_details\": {\r\n        \"website\": \"\",\r\n        \"legal_street_address\": \"\",\r\n        \"legal_country\": \"\",\r\n        \"legal_city\": \"\",\r\n        \"legal_zip_code\": \"\",\r\n        \"bank_accounts\": [\r\n            {}\r\n        ],\r\n        \"legal_name\": \"Testing\",\r\n        \"brand_name\": \"Testing\",\r\n        \"registration_number\": \"\",\r\n        \"tax_number\": \"\"\r\n    },\r\n    \"transaction_data\": {\r\n        \"payment_method\": \"\",\r\n        \"flow\": \"payform\",\r\n        \"extra\": {\r\n            \"amount\": 1.0,\r\n            \"masked_pan\": \"APPLEPAY-REDIRECT\"\r\n        },\r\n        \"country\": \"\",\r\n        \"attempts\": [\r\n            {\r\n                \"client_ip\": \"183.83.53.41\",\r\n                \"type\": \"execute\",\r\n                \"payment_method\": \"APPLEPAY-REDIRECT\",\r\n                \"flow\": \"payform\",\r\n                \"successful\": true,\r\n                \"country\": \"APPLEPAY-REDIRECT\",\r\n                \"processing_time\": 1768115700,\r\n                \"extra\": {\r\n                    \"amount\": 1.0,\r\n                    \"masked_pan\": \"APPLEPAY-REDIRECT\"\r\n                }\r\n            }\r\n        ]\r\n    },\r\n    \"status\": \"PAYMENT_IN_PROCESS\",\r\n    \"status_history\": [\r\n        {\r\n            \"status\": \"created\",\r\n            \"timestamp\": 1768115700\r\n        },\r\n        {\r\n            \"status\": \"pending_execute\",\r\n            \"timestamp\": 1768115700\r\n        },\r\n        {\r\n            \"status\": \"payment_in_process\",\r\n            \"timestamp\": 1768115701\r\n        }\r\n    ],\r\n    \"is_test\": false,\r\n    \"brand_id\": \"59c5ed48-caf9-464a-ba54-26e1e02bc1bc\",\r\n    \"send_receipt\": false,\r\n    \"is_recurring_token\": false,\r\n    \"skip_capture\": false,\r\n    \"reference_generated\": \"PS363\",\r\n    \"issued\": \"2026-01-11\",\r\n    \"due\": 1768115700,\r\n    \"refund_upto\": 1783664101,\r\n    \"cc_descriptor\": \"\",\r\n    \"fraudScore\": \"0\",\r\n    \"trustScore\": \"1\",\r\n    \"extraFee\": \"0\",\r\n    \"pix_payload\": {},\r\n    \"payInDetails\": {},\r\n    \"paidOn\": 0,\r\n    \"receivedAmt\": 0.0,\r\n    \"taxAmount\": 0.0,\r\n    \"surcharge\": 0.0,\r\n    \"surchargeType\": \"\",\r\n    \"sessionId\": \"\",\r\n    \"refund_availability\": \"NONE\",\r\n    \"refundable_amount\": 1.0,\r\n    \"success_redirect\": \"https://your-redirect-url?issucces=true\",\r\n    \"pending_redirect\": \"https://your-redirect-url?ispending=true\",\r\n    \"failure_redirect\": \"https://your-redirect-url?isfailure=true\",\r\n    \"success_callback\": \"https://your-webhook-url\",\r\n    \"failure_callback\": \"https://your-webhook-url\"\r\n    \"platform\": \"API\",\r\n    \"created_from_ip\": \"183.83.53.41\",\r\n    \"checkout_url\": \"https://api.choicepay.ca/payments/deb852445bd4b0fa6c4587f652174ab9/\",\r\n    \"payoutProcess\": false\r\n}"},{"id":"d49baa78-2246-4173-bd6e-d24679030580","name":"Purchase - failure","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Authorization","value":"Bearer Token"}],"body":{"mode":"raw","raw":"{\r\n    \"client\": {\r\n        \"email\": \"rahultest@gmail.com\",\r\n        \"country\": \"GB\",\r\n        \"city\": \"London\",\r\n        \"stateCode\": \"RJ\",\r\n        \"street_address\": \"10 New Burlington StreetApt. 214\",\r\n        \"zip_code\": \"W1S 3BE\",\r\n        \"date_of_birth\": \"1994-31-04\",\r\n        \"phone\": \"+91 9634088561\",\r\n        \"full_name\": \"Rahul Agarwal\"\r\n    },\r\n    \"purchase\": {\r\n        \"currency\": \"EUR\",\r\n        \"products\": [\r\n            {\r\n                \"name\": \"gaming cards \",\r\n                \"price\": 10\r\n            }\r\n        ]\r\n    },\r\n    \"brand_id\": \"your-brandid\",\r\n    \"paymentMethod\": \"APPLEPAY-REDIRECT\",\r\n    \"success_redirect\": \"https://your-redirect-url?issucces=true\",\r\n    \"pending_redirect\": \"https://your-redirect-url?ispending=true\",\r\n    \"failure_redirect\": \"https://your-redirect-url?isfailure=true\",\r\n    \"success_callback\": \"https://your-webhook-url\",\r\n    \"failure_callback\": \"https://your-webhook-url\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/purchases"},"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\r\n    \"message\": \"Error Message\",\r\n    \"code\": \"error_code\"\r\n}"}],"_postman_id":"464b5ca3-ff57-43ef-9117-15f2c675f744"},{"name":"Session","id":"9af05d11-2903-49e4-b2ec-5c3c3d398941","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/createSession","description":"<p><strong>OVERVIEW</strong></p>\n<p>The <code>createSession</code> API is designed to initiate a payment session for a customer after their profile has been created via the <strong>createCustomer</strong> API. The session is automatically generated at the backend on the merchant’s checkout URL. This session allows the customer to continue with their transaction without having to manually interact with the session URL, and ensures the session remains active until the payment is completed or the session expires.</p>\n<p>This API improves the user experience by reducing transaction failures and enhancing the overall payment process, thus reducing transaction churn rates.</p>\n<h3 id=\"mandatory-parameters\">Mandatory 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>Example</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>customerId</td>\n<td>String</td>\n<td>The unique ID of the customer (generated from createCustomer).</td>\n<td>6731a609b6bb5a43ad66c4a6</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"usage-flow\"><strong>Usage Flow</strong></h3>\n<ol>\n<li><p><strong>Customer completes the</strong> <strong><code>createCustomer</code></strong> <strong>API</strong>: Once the customer is created via the <code>createCustomer</code> API, the merchant proceeds to call the <code>createSession</code> API to generate a session.</p>\n</li>\n<li><p><strong>Merchant sends</strong> <strong><code>createSession</code></strong> <strong>request</strong>: The merchant sends a <code>POST</code> request to the <code>createSession</code> API with the customer’s <code>customerId</code> and the merchant’s <code>brandId</code>.</p>\n</li>\n<li><p><strong>Session created automatically on the checkout URL</strong>: Paybomb creates the session and associates it with the merchant’s checkout page. This session remains active on the backend, allowing the customer to continue the payment process without interruption.</p>\n</li>\n<li><p><strong>Customer proceeds to checkout</strong>: The customer is redirected to the checkout page as part of the merchant's payment flow, where the session is automatically validated. The session remains active for a set period, allowing the customer to complete the payment without needing to manually interact with the session URL.</p>\n</li>\n<li><p><strong>Session Expiry</strong>: The session expires after the set expiration time (<code>expiryOn</code>), ensuring the payment process is completed within the defined window. Default is 15 mins from the creation time.</p>\n</li>\n</ol>\n<hr />\n<h3 id=\"benefits\"><strong>Benefits</strong></h3>\n<ul>\n<li><p><strong>Seamless Checkout</strong>: The session URL is automatically generated and active at the backend, ensuring a smoother and uninterrupted customer experience.</p>\n</li>\n<li><p><strong>Reduced Transaction Failures</strong>: By ensuring the session remains active during the payment process, the chances of transaction failures due to session timeouts are minimized.</p>\n</li>\n<li><p><strong>Improved User Experience</strong>: The customer does not need to click on a session URL or navigate away from the page, leading to faster and more secure payment processing.</p>\n</li>\n</ul>\n","urlObject":{"path":["createSession"],"host":["https://app.paybomb.tech/api/v1"],"query":[],"variable":[]}},"response":[{"id":"1499cab7-5993-47b4-bdcc-f1bc371abbb9","name":"Success","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Accept","value":"*/*","type":"text"},{"key":"BrandId","value":"brand_id_value","description":"it is mandatory to pass the BrandId in header for each createSession request. ","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"customerId\": \"69034a5a61b460084d20c23b\",\r\n    \"merchantRef\": \"rahultestcustomer1@paybomb.tech\", // optional\r\n    \"currency\": \"EUR\",\r\n    \"products\": [\r\n        {\r\n            \"name\": \"Product1\",\r\n            \"price\": \"10\"\r\n        },\r\n        {\r\n            \"name\": \"Product2\",\r\n            \"price\": \"12\"\r\n        }\r\n    ],\r\n    \"totalAmount\": \"22\", // optional, but if present have precedence over sum of prices.\r\n    \"paymentMethod\": \"APPLEPAY-REDIRECT\", //optional\r\n    \"success_redirect\": \"https://your-redirect-url?issucces=true\",\r\n    \"pending_redirect\": \"https://your-redirect-url?ispending=true\",\r\n    \"failure_redirect\": \"https://your-redirect-url?isfailure=true\",\r\n    \"success_callback\": \"https://your-webhook-url\",\r\n    \"failure_callback\": \"https://your-webhook-url\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/createSession"},"status":"OK","code":200,"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\r\n    \"sessionUrl\": \"https://api.choicepay.ca/payment-session/6963533a0a18ea65153a81e7/\",\r\n    \"brandId\": \"brand_id_value\",\r\n    \"customerId\": \"69034a5a61b460084d20c23b\",\r\n    \"sessionId\": \"6963533a0a18ea65153a81e7\",\r\n    \"expiryOn\": 1768117950,\r\n    \"createdOn\": 1768117050\r\n}"},{"id":"2aac2330-2685-4647-903e-2996b0124adc","name":"Invalid Session","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Accept","value":"*/*","type":"text"},{"key":"BrandId","value":"brand_id_value","description":"it is mandatory to pass the BrandId in header for each createSession request. ","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"customerId\": \"69034a5a61b460084d20c23b\",\r\n    \"merchantRef\": \"rahultestcustomer1@paybomb.tech\", // optional\r\n    \"currency\": \"EUR\",\r\n    \"products\": [\r\n        {\r\n            \"name\": \"Product1\",\r\n            \"price\": \"10\"\r\n        },\r\n        {\r\n            \"name\": \"Product2\",\r\n            \"price\": \"12\"\r\n        }\r\n    ],\r\n    \"totalAmount\": \"22\", // optional, but if present have precedence over sum of prices.\r\n    \"paymentMethod\": \"APPLEPAY-REDIRECT\", //optional\r\n    \"success_redirect\": \"https://your-redirect-url?issucces=true\",\r\n    \"pending_redirect\": \"https://your-redirect-url?ispending=true\",\r\n    \"failure_redirect\": \"https://your-redirect-url?isfailure=true\",\r\n    \"success_callback\": \"https://your-webhook-url\",\r\n    \"failure_callback\": \"https://your-webhook-url\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://api.paybomb.net/api/v1/createSession"},"status":"Bad Request","code":400,"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\r\n    \"message\": \"Customer does not exist with this Customer Id\",\r\n    \"code\": \"Customer Id is invalid\"\r\n}"}],"_postman_id":"9af05d11-2903-49e4-b2ec-5c3c3d398941"},{"name":"Get Status","id":"e6dd61c4-6ca3-4cb3-bc16-76a6467d083e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"url":"https://app.paybomb.tech/api/v1/purchases/{purchaseId}/","description":"<p>This API tells you about all the details of a purchase (PayIn), including its history</p>\n<h3 id=\"mandatory\">Mandatory</h3>\n<p>you need to pass the <code>PurchaseID</code> in the API URL</p>\n<h3 id=\"possible-value-of-status\">Possible Value of Status</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Status</strong></th>\n<th><strong>Notes</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>paid</td>\n<td>Transaction Successful</td>\n</tr>\n<tr>\n<td>payment_in_process</td>\n<td>Payment is under Processing</td>\n</tr>\n<tr>\n<td>expired</td>\n<td>Purchase has Expired.</td>\n</tr>\n<tr>\n<td>error</td>\n<td>Transaction has Failed.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"response-examples\">Response Examples</h3>\n<p>In the response examples you can see instances of both <code>Paid</code> and <code>Error</code> Status purchases.</p>\n<h3 id=\"error-details\">Error Details</h3>\n<p>If there are any issues on the Purchase you can get more details from the <code>transaction_data.attempts.error</code> attribute of the response object</p>\n<h3 id=\"errors\">Errors</h3>\n<p>If there are any errors then it'll be in the format of :</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"message\": \"descriptive error message\",\n    \"code\": \"error_code\"\n}\n\n</code></pre>\n<p>Please see the Status Code section for further details.</p>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"fbcf6289-1ca0-4e35-9756-6ea0c5abb7a8","id":"fbcf6289-1ca0-4e35-9756-6ea0c5abb7a8","name":"APIs","type":"folder"}},"urlObject":{"path":["purchases","{purchaseId}",""],"host":["https://app.paybomb.tech/api/v1"],"query":[],"variable":[]}},"response":[{"id":"7ad37dad-df16-473e-81cc-c584704820a2","name":"Purchase - success","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json"},{"key":"Authorization","value":"Bearer Token"}],"url":"https://app.paybomb.tech/api/v1/purchases/{purchaseId}/"},"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\r\n    \"purchaseId\": \"69634df44549cbd3547ac750\",\r\n    \"client\": {\r\n        \"customerId\": \"NA\",\r\n        \"email\": \"rahultest@gmail.com\",\r\n        \"phone\": \"+91 9634088561\",\r\n        \"full_name\": \"Rahul Agarwal\",\r\n        \"date_of_birth\": \"1994-31-04\",\r\n        \"street_address\": \"10 New Burlington StreetApt. 214\",\r\n        \"country\": \"GB\",\r\n        \"city\": \"London\",\r\n        \"zip_code\": \"W1S 3BE\",\r\n        \"cc\": [],\r\n        \"bcc\": [],\r\n        \"stateCode\": \"RJ\"\r\n    },\r\n    \"updated_on\": 1768115701,\r\n    \"type\": \"purchase\",\r\n    \"paymentMethod\": \"APPLEPAY-REDIRECT\",\r\n    \"amountUnit\": \"MAJOR\",\r\n    \"errorMsg\": \"\",\r\n    \"errorCode\": \"NA\",\r\n    \"force_recurring\": false,\r\n    \"created_on\": 1768115700,\r\n    \"merchantRef\": \"69634df44549cbd3547ac750\",\r\n    \"purchase\": {\r\n        \"currency\": \"EUR\",\r\n        \"products\": [\r\n            {\r\n                \"name\": \"gaming cards\",\r\n                \"quantity\": 1.0,\r\n                \"price\": 1.0,\r\n                \"discount\": 0,\r\n                \"tax_percent\": \"0.00\"\r\n            }\r\n        ],\r\n        \"total\": 1.0,\r\n        \"requestAmount\": 1.0,\r\n        \"language\": \"en\",\r\n        \"notes\": \"\",\r\n        \"debt\": 0,\r\n        \"total_formatted\": 1.0,\r\n        \"taxAmount\": 0.0,\r\n        \"taxPercent\": 0.0,\r\n        \"request_client_details\": [],\r\n        \"email_message\": \"\"\r\n    },\r\n    \"payment\": {\r\n        \"is_outgoing\": false,\r\n        \"payment_type\": \"PURCHASE\",\r\n        \"amount\": 1.0,\r\n        \"currency\": \"EUR\",\r\n        \"net_amount\": 1.0,\r\n        \"fee_amount\": 0.0,\r\n        \"pending_amount\": 0.0,\r\n        \"pending_unfreeze_on\": null,\r\n        \"description\": \"\",\r\n        \"paid_on\": 1768115700,\r\n        \"remote_paid_on\": 1768115700\r\n    },\r\n    \"issuer_details\": {\r\n        \"website\": \"\",\r\n        \"legal_street_address\": \"\",\r\n        \"legal_country\": \"\",\r\n        \"legal_city\": \"\",\r\n        \"legal_zip_code\": \"\",\r\n        \"bank_accounts\": [\r\n            {}\r\n        ],\r\n        \"legal_name\": \"Testing\",\r\n        \"brand_name\": \"Testing\",\r\n        \"registration_number\": \"\",\r\n        \"tax_number\": \"\"\r\n    },\r\n    \"transaction_data\": {\r\n        \"payment_method\": \"\",\r\n        \"flow\": \"payform\",\r\n        \"extra\": {\r\n            \"amount\": 1.0,\r\n            \"masked_pan\": \"APPLEPAY-REDIRECT\"\r\n        },\r\n        \"country\": \"\",\r\n        \"attempts\": [\r\n            {\r\n                \"client_ip\": \"183.83.53.41\",\r\n                \"type\": \"execute\",\r\n                \"payment_method\": \"APPLEPAY-REDIRECT\",\r\n                \"flow\": \"payform\",\r\n                \"successful\": true,\r\n                \"country\": \"APPLEPAY-REDIRECT\",\r\n                \"processing_time\": 1768115700,\r\n                \"extra\": {\r\n                    \"amount\": 1.0,\r\n                    \"masked_pan\": \"APPLEPAY-REDIRECT\"\r\n                }\r\n            }\r\n        ]\r\n    },\r\n    \"status\": \"PAID\",\r\n    \"status_history\": [\r\n        {\r\n            \"status\": \"created\",\r\n            \"timestamp\": 1768115700\r\n        },\r\n        {\r\n            \"status\": \"pending_execute\",\r\n            \"timestamp\": 1768115700\r\n        },\r\n        {\r\n            \"status\": \"payment_in_process\",\r\n            \"timestamp\": 1768115701\r\n        },\r\n        {\r\n            \"status\": \"paid\",\r\n            \"timestamp\": 1768115701\r\n        }\r\n    ],\r\n    \"is_test\": false,\r\n    \"brand_id\": \"59c5ed48-caf9-464a-ba54-26e1e02bc1bc\",\r\n    \"send_receipt\": false,\r\n    \"is_recurring_token\": false,\r\n    \"skip_capture\": false,\r\n    \"reference_generated\": \"PS363\",\r\n    \"issued\": \"2026-01-11\",\r\n    \"due\": 1768115700,\r\n    \"refund_upto\": 1783664101,\r\n    \"cc_descriptor\": \"\",\r\n    \"fraudScore\": \"0\",\r\n    \"trustScore\": \"1\",\r\n    \"extraFee\": \"0\",\r\n    \"pix_payload\": {},\r\n    \"payInDetails\": {},\r\n    \"paidOn\": 0,\r\n    \"receivedAmt\": 0.0,\r\n    \"taxAmount\": 0.0,\r\n    \"surcharge\": 0.0,\r\n    \"surchargeType\": \"\",\r\n    \"sessionId\": \"\",\r\n    \"refund_availability\": \"NONE\",\r\n    \"refundable_amount\": 1.0,\r\n    \"success_redirect\": \"https://your-redirect-url?issucces=true\",\r\n    \"pending_redirect\": \"https://your-redirect-url?ispending=true\",\r\n    \"failure_redirect\": \"https://your-redirect-url?isfailure=true\",\r\n    \"success_callback\": \"https://your-webhook-url\",\r\n    \"failure_callback\": \"https://your-webhook-url\"\r\n    \"platform\": \"API\",\r\n    \"created_from_ip\": \"183.83.53.41\",\r\n    \"checkout_url\": \"https://api.choicepay.ca/payments/deb852445bd4b0fa6c4587f652174ab9/\",\r\n    \"payoutProcess\": false\r\n}"},{"id":"ee484eed-a2b4-48c1-a801-7f19c57b4127","name":"Purchase - failure","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"url":"https://app.paybomb.tech/api/v1/purchases/{purchaseId}/"},"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\r\n    \"message\": \"Error Message\",\r\n    \"code\": \"error_code\"\r\n}"}],"_postman_id":"e6dd61c4-6ca3-4cb3-bc16-76a6467d083e"}],"id":"fbcf6289-1ca0-4e35-9756-6ea0c5abb7a8","description":"<p><strong>API Flow</strong></p>\n<ol>\n<li><p>The merchant initiates the purchase via the create purchase API and passing the appropriate payment method. If successful, they receive a checkout URL in the response JSON.</p>\n</li>\n<li><p>Upon utilizing the checkout URL, the user will be presented with a screen where he will be shown a button to pay via Applepay.</p>\n</li>\n<li><p>After clicking the button, the user will see all the cards stored in the Apple wallet and he can choose one of the cards to make the purchase.</p>\n</li>\n<li><p>After a successful or failed payment by the end user, an appropriate webhook would be sent to the merchant. The user would also be redirected to the appropriate redirect URL.</p>\n</li>\n</ol>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"774e962f-60ef-435a-b01c-11772c5c1deb"}},{"listen":"test","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"cd68ad08-431b-4e0f-9746-6011289d80ad"}}],"_postman_id":"fbcf6289-1ca0-4e35-9756-6ea0c5abb7a8"}],"id":"d8b27eda-8142-4e5a-a1b3-982b231f88a6","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"3e46b787-d4f7-47d7-97be-35e77cf8d2e8"}},{"listen":"test","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"1dca195d-b6e6-43b2-b955-02c35c076620"}}],"_postman_id":"d8b27eda-8142-4e5a-a1b3-982b231f88a6","description":""},{"name":"🌎 Google Pay (Seamless)","item":[{"name":"Concepts","item":[],"id":"ffd8cc10-2208-44f4-bb0a-b2e30642c194","description":"<h2 id=\"get-started\"><strong>Get started</strong></h2>\n<p>Paybomb’s Server-to-Server (S2S) integration for Google Pay allows merchants to process Google Pay transactions securely from their backend systems. In this model, merchants are responsible for generating the Google Pay payment token on their client application and sending it to their server, which then communicates with Paybomb APIs.</p>\n<p>This integration uses DIRECT tokenization, where payment data is securely generated by Google Pay and passed to Paybomb for processing.</p>\n<p>This integration is recommended for merchants who require:</p>\n<ul>\n<li><p>Integration with Google Pay wallets</p>\n</li>\n<li><p>Secure handling of tokenized payment data</p>\n</li>\n<li><p>Flexibility in choosing PCI scope (encrypted vs decrypted flow)</p>\n</li>\n</ul>\n<hr />\n<h2 id=\"how-it-works\"><strong>How it works</strong></h2>\n<p>The Google Pay S2S payment flow follows a two-step process:</p>\n<h4 id=\"1-generate-google-pay-token-client-side\"><strong>1. Generate Google Pay Token (Client-side)</strong></h4>\n<p>The merchant integrates Google Pay SDK (Web/Android) to generate a payment token using DIRECT flow.</p>\n<h4 id=\"2-submit-token-via-s2s\"><strong>2. Submit Token via S2S</strong></h4>\n<p>The merchant server sends the Google Pay token (encrypted or decrypted) to Paybomb via the /purchase API.</p>\n<hr />\n<h2 id=\"supported-tokenization-type\"><strong>Supported Tokenization Type</strong></h2>\n<p>Paybomb supports DIRECT flow only.</p>\n<p>PAYMENT_GATEWAY flow is not supported yet.</p>\n<hr />\n<h2 id=\"google-pay-processing-overview\"><strong>Google Pay Processing Overview</strong></h2>\n<p>Google Pay transactions are processed as card-not-present payments using tokenized card data (PAN/DPAN) along with a cryptogram provided by Google Pay.</p>\n<p>These transactions go through:</p>\n<ul>\n<li><p>Card network (Visa, Mastercard, etc.)</p>\n</li>\n<li><p>Issuing bank authorization</p>\n</li>\n<li><p>Risk and fraud checks</p>\n</li>\n</ul>\n<hr />\n<h2 id=\"integration-options\"><strong>Integration Options</strong></h2>\n<p>Paybomb supports two integration modes:</p>\n<hr />\n<h3 id=\"1-encrypted-token-flow-recommended\"><strong>1. Encrypted Token Flow (Recommended)</strong></h3>\n<p>In this flow, the merchant sends the encrypted Google Pay token to Paybomb. Paybomb decrypts and processes the payment.</p>\n<h4 id=\"key-characteristics\">Key Characteristics</h4>\n<ul>\n<li><p>Merchant does not handle PAN</p>\n</li>\n<li><p>Reduced PCI scope</p>\n</li>\n<li><p>Recommended for most merchants</p>\n</li>\n</ul>\n<h4 id=\"pci-impact\">PCI Impact</h4>\n<p>Merchants can significantly reduce PCI DSS scope since sensitive card data is handled by Paybomb.</p>\n<hr />\n<h3 id=\"2-decrypted-token-flow\"><strong>2. Decrypted Token Flow</strong></h3>\n<p>In this flow, the merchant decrypts the Google Pay token and sends decrypted token details to Paybomb.</p>\n<h4 id=\"key-characteristics-1\">Key Characteristics</h4>\n<ul>\n<li><p>PAN is available at merchant side</p>\n</li>\n<li><p>Faster processing</p>\n</li>\n<li><p>Full control over payment data</p>\n</li>\n</ul>\n<h4 id=\"pci-impact-1\">PCI Impact</h4>\n<p>Merchants must be PCI DSS compliant (SAQ D) as they handle raw card data.</p>\n<hr />\n<h2 id=\"before-you-begin\"><strong>Before you begin</strong></h2>\n<p>Ensure the following prerequisites are met:</p>\n<ul>\n<li><p>You have received your API credentials from Paybomb.</p>\n</li>\n<li><p>You have a valid Google Merchant ID</p>\n</li>\n<li><p>You have integrated Google Pay SDK to generate tokens</p>\n</li>\n<li><p>You have configured DIRECT tokenization in Google Pay</p>\n</li>\n<li><p>Your server can make secure HTTPS requests</p>\n</li>\n<li><p>You have a valid brand_id provided by Paybomb</p>\n</li>\n</ul>\n<h3 id=\"additional-requirements-encrypted-flow\">Additional Requirements (Encrypted Flow)</h3>\n<ul>\n<li><p>Generate EC key pair (P-256 / secp256r1)</p>\n</li>\n<li><p>Register public key in Google Pay Console</p>\n</li>\n<li><p>Share private key securely with Paybomb</p>\n</li>\n</ul>\n<h3 id=\"additional-requirements-decrypted-flow\">Additional Requirements (Decrypted Flow)</h3>\n<ul>\n<li><p>Implement token decryption using Google Tink library</p>\n</li>\n<li><p>Ensure full PCI DSS compliance</p>\n</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"22615511-937a-4447-b8cd-21ef278274d2"}},{"listen":"test","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"a9d0598c-6ad7-49e0-9351-457258c29cb1"}}],"_postman_id":"ffd8cc10-2208-44f4-bb0a-b2e30642c194"},{"name":"APIs","item":[{"name":"Purchases (Encrypted Flow)","id":"a0fa98c9-d48c-4808-9a6a-9bfc99b5eb2d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Authorization","value":"Bearer Token"}],"body":{"mode":"raw","raw":"{\r\n    \"client\": {\r\n        \"customerId\": \"NA\",\r\n        \"email\": \"himanshu1@paybomb.tech\",\r\n        \"full_name\": \"OpHM\",\r\n        \"date_of_birth\": \"1800-01-01\",\r\n        \"street_address\": \"SB-124\",\r\n        \"country\": \"BR\",\r\n        \"city\": \"DLJPR\",\r\n        \"zip_code\": \"110001\",\r\n        \"cc\": [],\r\n        \"bcc\": [],\r\n        \"stateCode\": \"DL\"\r\n    },\r\n    \"purchase\": {\r\n        \"currency\": \"EUR\",\r\n        \"products\": [\r\n            {\r\n                \"name\": \"e-commerce\",\r\n                \"price\": \"10\"\r\n            }\r\n        ]\r\n    },\r\n    \"paymentMethod\": \"GOOGLEPAY\",\r\n    \"brand_id\": \"f1764688-d991-481b-be63-9ee7f33dcd31\",\r\n    \"success_redirect\": \"https://google.com/\",\r\n    \"pending_redirect\": \"https://app.paybomb.tech\",\r\n    \"failure_redirect\": \"https://facebook.com/\",\r\n    \"success_callback\": \"https://your.success.callback.com\",\r\n    \"failure_callback\": \"https://your.failure.callback.com\",\r\n    \"extraParam\": {\r\n        \"googlepay_param\": {\r\n            \"google_merchant_id\": \"merchant:1234567890\",\r\n            \"googlepay_encrypted_payload\": \"{\\\"signature\\\":\\\"MEUCIQC...\\\",\\\"intermediateSigningKey\\\":{...},\\\"protocolVersion\\\":\\\"ECv2\\\",\\\"signedMessage\\\":\\\"{...}\\\"}\"\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/purchases/","description":"<p>To process a Google Pay transaction, a Purchase must first be created using the /purchases API. The Google Pay token must be included in the request under extraParam.googlepay_param.</p>\n<p>To generate a Purchase, you are required to provide the <code>Brand ID</code> (in the request body) and <code>API key</code> (in the header) Both can be located in the Dashboard section of your merchant account login.</p>\n<p>The request body structure is shown on the request body of the example request shown here.</p>\n<p>The following (see table below) are the mandatory parameters that are required to create a purchase request.</p>\n<h3 id=\"parameters-in-the-request-body\"><strong>Parameters in the request body:</strong></h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Notes</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>client.full_name</td>\n<td>Conditional.  <br />But Recommended to pass the complete name of the client. Atleast 2 words recommended.</td>\n</tr>\n<tr>\n<td>client.email</td>\n<td>Conditional.  <br />But Recommended to pass a correct email id.</td>\n</tr>\n<tr>\n<td>paymentMethod</td>\n<td>Conditional.  <br />Mandatory if you are not using Paybomb Cashier. Else Non Mandatory.  <br />Value: GOOGLEPAY</td>\n</tr>\n<tr>\n<td>purchase.currency</td>\n<td>Mandatory.  <br />ISO 4217 code for currency you want to send the transaction in. This should be 'BRL' for PIX.</td>\n</tr>\n<tr>\n<td>purchase.products.name</td>\n<td>Mandatory.</td>\n</tr>\n<tr>\n<td>purchase.products.price</td>\n<td>Mandatory.  <br />Price in decimal format upto 2 decimals.  <br />example 1:  <br />EUR 5 , should be sent as 5.00  <br />example 2:  <br />USD 10 and 37 cents , should be sent as 10.37</td>\n</tr>\n<tr>\n<td>brand_id</td>\n<td>Mandatory.  <br />Obtain from Dashboard section of your merchant account login.</td>\n</tr>\n<tr>\n<td>success_redirect</td>\n<td>Mandatory.  <br />URL to send the user if the transactions is successful.</td>\n</tr>\n<tr>\n<td>pending_redirect</td>\n<td>Mandatory.  <br />URL to send the user if the transactions is in progress state.</td>\n</tr>\n<tr>\n<td>failure_redirect</td>\n<td>Mandatory  <br />URL to send the user if the transactions has failed.</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"optional-parameters\">Optional Parameters</h2>\n<h3 id=\"expireinmin\">expireInMin</h3>\n<p>This parameter, when passed in the PayIn request, sets the time window within which a customer should make the Interac payment through their bank's app. If a customer doesn't complete the payment within the configured time window, the status of the payment will be marked as 'EXPIRED' in Paybomb.</p>\n<p>However, in certain cases, a payment made outside of this window could still be successful i.e. customer's account may be debited which would result in inconsistencies among Paybomb's, merchant's and customer's status of the transaction. To avoid such cases it is advised to set the expiry time limit appropriately and advise the customers to make payment within this window. However, if there is an inconsistency between the status at Paybomb and at customer's Bank, the merchant and Paybomb will reconcile the amounts during the settlement.</p>\n<h3 id=\"merchantref\">merchantRef</h3>\n<p>The <code>merchantRef</code> parameter, although not mandatory, is strongly advised for merchants to specify. Its inclusion offers two significant advantages for the merchant:</p>\n<ol>\n<li><p><strong>Prevention of Duplicate Requests:</strong> When a <code>merchantRef</code> is utilized, it acts as a unique identifier. This means that if a second purchase request is made using the same <code>merchantRef</code> (reference number), the system will recognize it and prevent duplicate transactions from occurring. This prevents unintended or duplicate purchases.</p>\n</li>\n<li><p><strong>Facilitation of Transaction Retrieval:</strong> In situations where the response from the initial purchase request times out or the 'purchaseId' isn't received, having the <code>merchantRef</code> allows the merchant to retrieve detailed transaction information. This ensures they can track and access the specific purchase details related to that reference, even if the immediate response was not received.</p>\n</li>\n</ol>\n<p>However, if the merchant does not specify the 'merchantRef' parameter, the platform will automatically assign and use an internal 'purchaseId' as a reference for that transaction.</p>\n<h3 id=\"paymentmethod\">paymentMethod</h3>\n<p>The <code>paymentMethod</code> parameter identifies which payment solution merchant wants to use to perform a transaction. If parameter is provided, then Paybomb will perform direct payment with the selected payment method instead of loading Paybomb URL.</p>\n<h3 id=\"flow-diagram\">Flow Diagram:</h3>\n<img src=\"https://content.pstmn.io/2dd13473-b015-4a40-b71a-542585919bcc/RW5jcnlwdGVkIEZsb3cucG5n\" />","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"10a74d03-6fd9-44fa-855a-b85154a1da10","id":"10a74d03-6fd9-44fa-855a-b85154a1da10","name":"APIs","type":"folder"}},"urlObject":{"path":["purchases",""],"host":["https://app.paybomb.tech/api/v1"],"query":[],"variable":[]}},"response":[{"id":"709dd50d-22de-4962-9a3b-6e2f05de2980","name":"Purchase - success","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Authorization","value":"Bearer Token"}],"body":{"mode":"raw","raw":"{\r\n   \"client\": {\r\n       \"customerId\": \"NA\",\r\n       \"email\": \"himanshu1@paybomb.tech\",\r\n       \"full_name\": \"OpHM\",\r\n       \"date_of_birth\": \"1800-01-01\",\r\n       \"street_address\": \"SB-124\",\r\n       \"country\": \"BR\",\r\n       \"city\": \"DLJPR\",\r\n       \"zip_code\": \"110001\",\r\n       \"cc\": [],\r\n       \"bcc\": [],\r\n       \"stateCode\": \"DL\"\r\n   },\r\n   \"purchase\": {\r\n       \"currency\": \"EUR\",\r\n       \"products\": [\r\n           {\r\n               \"name\": \"e-commerce\",\r\n               \"price\": \"10\"\r\n           }\r\n       ]\r\n   },\r\n   \"paymentMethod\": \"GOOGLEPAY\",\r\n   \"brand_id\": \"f1764688-d991-481b-be63-9ee7f33dcd31\",\r\n   \"success_redirect\": \"https://google.com/\",\r\n   \"pending_redirect\": \"https://app.paybomb.tech\",\r\n   \"failure_redirect\": \"https://facebook.com/\",\r\n   \"success_callback\": \"https://your.success.callback.com\",\r\n   \"failure_callback\": \"https://your.failure.callback.com\",\r\n      \"extraParam\": {\r\n    \"googlepay_param\": {\r\n      \"google_merchant_id\": \"merchant:1234567890\",\r\n      \"googlepay_encrypted_payload\":     \"{\\\"signature\\\":\\\"MEUCIQC...\\\",\\\"intermediateSigningKey\\\":{...},\\\"protocolVersion\\\":\\\"ECv2\\\",\\\"signedMessage\\\":\\\"{...}\\\"}\"  \r\n      }\r\n   }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/purchases"},"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\r\n    \"purchaseId\": \"69cce01f5bae56fd5547a993\",\r\n    \"client\": {\r\n        \"customerId\": \"NA\",\r\n        \"email\": \"himanshu1@paybomb.tech\",\r\n        \"full_name\": \"OpHM\",\r\n        \"date_of_birth\": \"1800-01-01\",\r\n        \"street_address\": \"SB-124\",\r\n        \"country\": \"BR\",\r\n        \"city\": \"DLJPR\",\r\n        \"zip_code\": \"110001\",\r\n        \"cc\": [],\r\n        \"bcc\": [],\r\n        \"stateCode\": \"DL\"\r\n    },\r\n    \"updated_on\": 1775034399,\r\n    \"type\": \"purchase\",\r\n    \"paymentMethod\": \"GOOGLEPAY\",\r\n    \"amountUnit\": \"MAJOR\",\r\n    \"errorMsg\": \"\",\r\n    \"errorCode\": \"NA\",\r\n    \"force_recurring\": false,\r\n    \"created_on\": 1775034399,\r\n    \"merchantRef\": \"69cce01f5bae56fd5547a993\",\r\n    \"purchase\": {\r\n        \"currency\": \"USD\",\r\n        \"products\": [\r\n            {\r\n                \"name\": \"e-commerce\",\r\n                \"quantity\": 1.0,\r\n                \"price\": 10.0,\r\n                \"discount\": 0,\r\n                \"tax_percent\": \"0.00\"\r\n            }\r\n        ],\r\n        \"total\": 10.0,\r\n        \"requestAmount\": 10.0,\r\n        \"language\": \"en\",\r\n        \"notes\": \"\",\r\n        \"debt\": 0,\r\n        \"total_formatted\": 1.0,\r\n        \"taxAmount\": 0.0,\r\n        \"taxPercent\": 0.0,\r\n        \"request_client_details\": [],\r\n        \"email_message\": \"\"\r\n    },\r\n    \"issuer_details\": {\r\n        \"website\": \"\",\r\n        \"legal_street_address\": \"\",\r\n        \"legal_country\": \"\",\r\n        \"legal_city\": \"\",\r\n        \"legal_zip_code\": \"\",\r\n        \"bank_accounts\": [\r\n            {}\r\n        ],\r\n        \"legal_name\": \"Omega Pixel\",\r\n        \"brand_name\": \"Omega Pixel\",\r\n        \"registration_number\": \"\",\r\n        \"tax_number\": \"\"\r\n    },\r\n    \"transaction_data\": {\r\n        \"payment_method\": \"\",\r\n        \"flow\": \"payform\",\r\n        \"extra\": {},\r\n        \"country\": \"\",\r\n        \"attempts\": []\r\n    },\r\n    \"status\": \"CREATED\",\r\n    \"status_history\": [\r\n        {\r\n            \"status\": \"created\",\r\n            \"timestamp\": 1775034399\r\n        }\r\n    ],\r\n    \"is_test\": false,\r\n    \"brand_id\": \"f1764688-d991-481b-be63-9ee7f33dcd31\",\r\n    \"send_receipt\": false,\r\n    \"is_recurring_token\": false,\r\n    \"skip_capture\": false,\r\n    \"reference_generated\": \"PS1032\",\r\n    \"issued\": \"2026-04-01\",\r\n    \"due\": 1775034399,\r\n    \"refund_upto\": 0,\r\n    \"cc_descriptor\": \"\",\r\n    \"fraudScore\": \"NA\",\r\n    \"trustScore\": \"NA\",\r\n    \"extraFee\": \"0\",\r\n    \"paidOn\": 0,\r\n    \"receivedAmt\": 0.0,\r\n    \"taxAmount\": 0.0,\r\n    \"surcharge\": 0.0,\r\n    \"surchargeType\": \"\",\r\n    \"sessionId\": \"\",\r\n    \"refund_availability\": \"NONE\",\r\n    \"refundable_amount\": 0.0,\r\n    \"success_redirect\": \"https://google.com/\",\r\n    \"failure_redirect\": \"https://facebook.com/\",\r\n    \"pending_redirect\": \"https://app.paybomb.tech\",\r\n    \"cancel_redirect\": \"\",\r\n    \"success_callback\": \"https://your.success.callback.com\",\r\n    \"failure_callback\": \"https://your.failure.callback.com\",\r\n    \"platform\": \"API\",\r\n    \"created_from_ip\": \"103.80.161.238\",\r\n    \"checkout_url\": \"https://api.choicepay.ca/payments/6b5a5977ac8e022facb31f3346f61ed0/\",\r\n    \"direct_post_url\": \"https://api.choicepay.ca/api/v1/p/69cce01f5bae56fd5547a993/\",\r\n    \"payoutProcess\": false\r\n}"},{"id":"9b60cc04-bfa7-4449-8125-eae2a3e69adc","name":"Purchase - failure","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Authorization","value":"Bearer Token"}],"body":{"mode":"raw","raw":"{\r\n    \"client\": {\r\n        \"customerId\": \"NA\",\r\n        \"email\": \"himanshu1@paybomb.tech\",\r\n        \"full_name\": \"OpHM\",\r\n        \"date_of_birth\": \"1800-01-01\",\r\n        \"street_address\": \"SB-124\",\r\n        \"country\": \"BR\",\r\n        \"city\": \"DLJPR\",\r\n        \"zip_code\": \"110001\",\r\n        \"cc\": [],\r\n        \"bcc\": [],\r\n        \"stateCode\": \"DL\"\r\n    },\r\n    \"purchase\": {\r\n        \"currency\": \"EUR\",\r\n        \"products\": [\r\n            {\r\n                \"name\": \"e-commerce\",\r\n                \"price\": \"10\"\r\n            }\r\n        ]\r\n    },\r\n    \"paymentMethod\": \"GOOGLEPAY\",\r\n    \"brand_id\": \"f1764688-d991-481b-be63-9ee7f33dcd31\",\r\n    \"success_redirect\": \"https://google.com/\",\r\n    \"pending_redirect\": \"https://app.paybomb.tech\",\r\n    \"failure_redirect\": \"https://facebook.com/\",\r\n    \"success_callback\": \"https://your.success.callback.com\",\r\n    \"failure_callback\": \"https://your.failure.callback.com\",\r\n    \"extraParam\": {\r\n        \"googlepay_param\": {\r\n            \"google_merchant_id\": \"merchant:1234567890\",\r\n            \"googlepay_encrypted_payload\": \"{\\\"signature\\\":\\\"MEUCIQC...\\\",\\\"intermediateSigningKey\\\":{...},\\\"protocolVersion\\\":\\\"ECv2\\\",\\\"signedMessage\\\":\\\"{...}\\\"}\"\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/purchases"},"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\r\n    \"message\": \"Error Message\",\r\n    \"code\": \"error_code\"\r\n}"}],"_postman_id":"a0fa98c9-d48c-4808-9a6a-9bfc99b5eb2d"},{"name":"Purchases (Decrypted Flow)","id":"b6f0a2f3-f04d-4a0d-8a37-c92a79b8b250","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Authorization","value":"Bearer Token"}],"body":{"mode":"raw","raw":"{\r\n    \"client\": {\r\n        \"customerId\": \"NA\",\r\n        \"email\": \"himanshu1@paybomb.tech\",\r\n        \"full_name\": \"OpHM\",\r\n        \"date_of_birth\": \"1800-01-01\",\r\n        \"street_address\": \"SB-124\",\r\n        \"country\": \"BR\",\r\n        \"city\": \"DLJPR\",\r\n        \"zip_code\": \"110001\",\r\n        \"cc\": [],\r\n        \"bcc\": [],\r\n        \"stateCode\": \"DL\"\r\n    },\r\n    \"purchase\": {\r\n        \"currency\": \"EUR\",\r\n        \"products\": [\r\n            {\r\n                \"name\": \"e-commerce\",\r\n                \"price\": \"10\"\r\n            }\r\n        ]\r\n    },\r\n    \"paymentMethod\": \"GOOGLEPAY\",\r\n    \"brand_id\": \"f1764688-d991-481b-be63-9ee7f33dcd31\",\r\n    \"success_redirect\": \"https://google.com/\",\r\n    \"pending_redirect\": \"https://app.paybomb.tech\",\r\n    \"failure_redirect\": \"https://facebook.com/\",\r\n    \"success_callback\": \"https://your.success.callback.com\",\r\n    \"failure_callback\": \"https://your.failure.callback.com\",\r\n    \"extraParam\": {\r\n        \"googlepay_param\": {\r\n            \"google_merchant_id\": \"merchant:1234567890\",\r\n            \"googlepay_decrypted_payload\": {\r\n                \"messageExpiration\": \"1735689600000\",\r\n                \"messageId\": \"AH2EjtfkYz...\",\r\n                \"paymentMethod\": \"CARD\",\r\n                \"paymentMethodDetails\": {\r\n                    \"pan\": \"4111111111111111\",\r\n                    \"expirationMonth\": 12,\r\n                    \"expirationYear\": 2027,\r\n                    \"authMethod\": \"CRYPTOGRAM_3DS\",\r\n                    \"cryptogram\": \"AgAAAAAABk4D...\",\r\n                    \"eciIndicator\": \"05\"\r\n                },\r\n                \"gatewayMerchantId\": \"your_gateway_merchant_id\"\r\n            }\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/purchases/","description":"<p>To process a Google Pay transaction, a Purchase must first be created using the /purchases API. The Google Pay token must be included in the request under extraParam.googlepay_param.</p>\n<p>To generate a Purchase, you are required to provide the <code>Brand ID</code> (in the request body) and <code>API key</code> (in the header) Both can be located in the Dashboard section of your merchant account login.</p>\n<p>The request body structure is shown on the request body of the example request shown here.</p>\n<p>The following (see table below) are the mandatory parameters that are required to create a purchase request.</p>\n<h3 id=\"parameters-in-the-request-body\"><strong>Parameters in the request body:</strong></h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Notes</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>client.full_name</td>\n<td>Conditional.  <br />But Recommended to pass the complete name of the client. Atleast 2 words recommended.</td>\n</tr>\n<tr>\n<td>client.email</td>\n<td>Conditional.  <br />But Recommended to pass a correct email id.</td>\n</tr>\n<tr>\n<td>paymentMethod</td>\n<td>Conditional.  <br />Mandatory if you are not using Paybomb Cashier. Else Non Mandatory.  <br />Value: GOOGLEPAY</td>\n</tr>\n<tr>\n<td>purchase.currency</td>\n<td>Mandatory.  <br />ISO 4217 code for currency you want to send the transaction in. This should be 'BRL' for PIX.</td>\n</tr>\n<tr>\n<td>purchase.products.name</td>\n<td>Mandatory.</td>\n</tr>\n<tr>\n<td>purchase.products.price</td>\n<td>Mandatory.  <br />Price in decimal format upto 2 decimals.  <br />example 1:  <br />EUR 5 , should be sent as 5.00  <br />example 2:  <br />USD 10 and 37 cents , should be sent as 10.37</td>\n</tr>\n<tr>\n<td>brand_id</td>\n<td>Mandatory.  <br />Obtain from Dashboard section of your merchant account login.</td>\n</tr>\n<tr>\n<td>success_redirect</td>\n<td>Mandatory.  <br />URL to send the user if the transactions is successful.</td>\n</tr>\n<tr>\n<td>pending_redirect</td>\n<td>Mandatory.  <br />URL to send the user if the transactions is in progress state.</td>\n</tr>\n<tr>\n<td>failure_redirect</td>\n<td>Mandatory  <br />URL to send the user if the transactions has failed.</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"optional-parameters\">Optional Parameters</h2>\n<h3 id=\"expireinmin\">expireInMin</h3>\n<p>This parameter, when passed in the PayIn request, sets the time window within which a customer should make the Interac payment through their bank's app. If a customer doesn't complete the payment within the configured time window, the status of the payment will be marked as 'EXPIRED' in Paybomb.</p>\n<p>However, in certain cases, a payment made outside of this window could still be successful i.e. customer's account may be debited which would result in inconsistencies among Paybomb's, merchant's and customer's status of the transaction. To avoid such cases it is advised to set the expiry time limit appropriately and advise the customers to make payment within this window. However, if there is an inconsistency between the status at Paybomb and at customer's Bank, the merchant and Paybomb will reconcile the amounts during the settlement.</p>\n<h3 id=\"merchantref\">merchantRef</h3>\n<p>The <code>merchantRef</code> parameter, although not mandatory, is strongly advised for merchants to specify. Its inclusion offers two significant advantages for the merchant:</p>\n<ol>\n<li><p><strong>Prevention of Duplicate Requests:</strong> When a <code>merchantRef</code> is utilized, it acts as a unique identifier. This means that if a second purchase request is made using the same <code>merchantRef</code> (reference number), the system will recognize it and prevent duplicate transactions from occurring. This prevents unintended or duplicate purchases.</p>\n</li>\n<li><p><strong>Facilitation of Transaction Retrieval:</strong> In situations where the response from the initial purchase request times out or the 'purchaseId' isn't received, having the <code>merchantRef</code> allows the merchant to retrieve detailed transaction information. This ensures they can track and access the specific purchase details related to that reference, even if the immediate response was not received.</p>\n</li>\n</ol>\n<p>However, if the merchant does not specify the 'merchantRef' parameter, the platform will automatically assign and use an internal 'purchaseId' as a reference for that transaction.</p>\n<h3 id=\"paymentmethod\">paymentMethod</h3>\n<p>The <code>paymentMethod</code> parameter identifies which payment solution merchant wants to use to perform a transaction. If parameter is provided, than Paybomb will perform direct payment with the selected payment method instead of loading Paybomb URL.</p>\n<h3 id=\"flow-diagram\">Flow Diagram:</h3>\n<img src=\"https://content.pstmn.io/8d726da8-02f8-49a4-a3a9-765cd3e1dd9a/RGVjcnlwdGVkIEZsb3cucG5n\" />","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"10a74d03-6fd9-44fa-855a-b85154a1da10","id":"10a74d03-6fd9-44fa-855a-b85154a1da10","name":"APIs","type":"folder"}},"urlObject":{"path":["purchases",""],"host":["https://app.paybomb.tech/api/v1"],"query":[],"variable":[]}},"response":[{"id":"d35dd17a-4ee5-4fa7-8c45-130f462a6dca","name":"Purchase - success","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Authorization","value":"Bearer Token"}],"body":{"mode":"raw","raw":"{\r\n    \"client\": {\r\n        \"customerId\": \"NA\",\r\n        \"email\": \"himanshu1@paybomb.tech\",\r\n        \"full_name\": \"OpHM\",\r\n        \"date_of_birth\": \"1800-01-01\",\r\n        \"street_address\": \"SB-124\",\r\n        \"country\": \"BR\",\r\n        \"city\": \"DLJPR\",\r\n        \"zip_code\": \"110001\",\r\n        \"cc\": [],\r\n        \"bcc\": [],\r\n        \"stateCode\": \"DL\"\r\n    },\r\n    \"purchase\": {\r\n        \"currency\": \"EUR\",\r\n        \"products\": [\r\n            {\r\n                \"name\": \"e-commerce\",\r\n                \"price\": \"10\"\r\n            }\r\n        ]\r\n    },\r\n    \"paymentMethod\": \"GOOGLEPAY\",\r\n    \"brand_id\": \"f1764688-d991-481b-be63-9ee7f33dcd31\",\r\n    \"success_redirect\": \"https://google.com/\",\r\n    \"pending_redirect\": \"https://app.paybomb.tech\",\r\n    \"failure_redirect\": \"https://facebook.com/\",\r\n    \"success_callback\": \"https://your.success.callback.com\",\r\n    \"failure_callback\": \"https://your.failure.callback.com\",\r\n    \"extraParam\": {\r\n        \"googlepay_param\": {\r\n            \"google_merchant_id\": \"merchant:1234567890\",\r\n            \"googlepay_decrypted_payload\": {\r\n                \"messageExpiration\": \"1735689600000\",\r\n                \"messageId\": \"AH2EjtfkYz...\",\r\n                \"paymentMethod\": \"CARD\",\r\n                \"paymentMethodDetails\": {\r\n                    \"pan\": \"4111111111111111\",\r\n                    \"expirationMonth\": 12,\r\n                    \"expirationYear\": 2027,\r\n                    \"authMethod\": \"CRYPTOGRAM_3DS\",\r\n                    \"cryptogram\": \"AgAAAAAABk4D...\",\r\n                    \"eciIndicator\": \"05\"\r\n                },\r\n                \"gatewayMerchantId\": \"your_gateway_merchant_id\"\r\n            }\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/purchases"},"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\r\n    \"purchaseId\": \"69cce01f5bae56fd5547a993\",\r\n    \"client\": {\r\n        \"customerId\": \"NA\",\r\n        \"email\": \"himanshu1@paybomb.tech\",\r\n        \"full_name\": \"OpHM\",\r\n        \"date_of_birth\": \"1800-01-01\",\r\n        \"street_address\": \"SB-124\",\r\n        \"country\": \"BR\",\r\n        \"city\": \"DLJPR\",\r\n        \"zip_code\": \"110001\",\r\n        \"cc\": [],\r\n        \"bcc\": [],\r\n        \"stateCode\": \"DL\"\r\n    },\r\n    \"updated_on\": 1775034399,\r\n    \"type\": \"purchase\",\r\n    \"paymentMethod\": \"GOOGLEPAY\",\r\n    \"amountUnit\": \"MAJOR\",\r\n    \"errorMsg\": \"\",\r\n    \"errorCode\": \"NA\",\r\n    \"force_recurring\": false,\r\n    \"created_on\": 1775034399,\r\n    \"merchantRef\": \"69cce01f5bae56fd5547a993\",\r\n    \"purchase\": {\r\n        \"currency\": \"USD\",\r\n        \"products\": [\r\n            {\r\n                \"name\": \"e-commerce\",\r\n                \"quantity\": 1.0,\r\n                \"price\": 10.0,\r\n                \"discount\": 0,\r\n                \"tax_percent\": \"0.00\"\r\n            }\r\n        ],\r\n        \"total\": 10.0,\r\n        \"requestAmount\": 10.0,\r\n        \"language\": \"en\",\r\n        \"notes\": \"\",\r\n        \"debt\": 0,\r\n        \"total_formatted\": 1.0,\r\n        \"taxAmount\": 0.0,\r\n        \"taxPercent\": 0.0,\r\n        \"request_client_details\": [],\r\n        \"email_message\": \"\"\r\n    },\r\n    \"issuer_details\": {\r\n        \"website\": \"\",\r\n        \"legal_street_address\": \"\",\r\n        \"legal_country\": \"\",\r\n        \"legal_city\": \"\",\r\n        \"legal_zip_code\": \"\",\r\n        \"bank_accounts\": [\r\n            {}\r\n        ],\r\n        \"legal_name\": \"Omega Pixel\",\r\n        \"brand_name\": \"Omega Pixel\",\r\n        \"registration_number\": \"\",\r\n        \"tax_number\": \"\"\r\n    },\r\n    \"transaction_data\": {\r\n        \"payment_method\": \"\",\r\n        \"flow\": \"payform\",\r\n        \"extra\": {},\r\n        \"country\": \"\",\r\n        \"attempts\": []\r\n    },\r\n    \"status\": \"CREATED\",\r\n    \"status_history\": [\r\n        {\r\n            \"status\": \"created\",\r\n            \"timestamp\": 1775034399\r\n        }\r\n    ],\r\n    \"is_test\": false,\r\n    \"brand_id\": \"f1764688-d991-481b-be63-9ee7f33dcd31\",\r\n    \"send_receipt\": false,\r\n    \"is_recurring_token\": false,\r\n    \"skip_capture\": false,\r\n    \"reference_generated\": \"PS1032\",\r\n    \"issued\": \"2026-04-01\",\r\n    \"due\": 1775034399,\r\n    \"refund_upto\": 0,\r\n    \"cc_descriptor\": \"\",\r\n    \"fraudScore\": \"NA\",\r\n    \"trustScore\": \"NA\",\r\n    \"extraFee\": \"0\",\r\n    \"paidOn\": 0,\r\n    \"receivedAmt\": 0.0,\r\n    \"taxAmount\": 0.0,\r\n    \"surcharge\": 0.0,\r\n    \"surchargeType\": \"\",\r\n    \"sessionId\": \"\",\r\n    \"refund_availability\": \"NONE\",\r\n    \"refundable_amount\": 0.0,\r\n    \"success_redirect\": \"https://google.com/\",\r\n    \"failure_redirect\": \"https://facebook.com/\",\r\n    \"pending_redirect\": \"https://app.paybomb.tech\",\r\n    \"cancel_redirect\": \"\",\r\n    \"success_callback\": \"https://your.success.callback.com\",\r\n    \"failure_callback\": \"https://your.failure.callback.com\",\r\n    \"platform\": \"API\",\r\n    \"created_from_ip\": \"103.80.161.238\",\r\n    \"checkout_url\": \"https://api.choicepay.ca/payments/6b5a5977ac8e022facb31f3346f61ed0/\",\r\n    \"direct_post_url\": \"https://api.choicepay.ca/api/v1/p/69cce01f5bae56fd5547a993/\",\r\n    \"payoutProcess\": false\r\n}"},{"id":"43d7ddb7-81f9-4803-8818-cf7a227277d3","name":"Purchase - failure","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Authorization","value":"Bearer Token"}],"body":{"mode":"raw","raw":"{\r\n    \"client\": {\r\n        \"customerId\": \"NA\",\r\n        \"email\": \"himanshu1@paybomb.tech\",\r\n        \"full_name\": \"OpHM\",\r\n        \"date_of_birth\": \"1800-01-01\",\r\n        \"street_address\": \"SB-124\",\r\n        \"country\": \"BR\",\r\n        \"city\": \"DLJPR\",\r\n        \"zip_code\": \"110001\",\r\n        \"cc\": [],\r\n        \"bcc\": [],\r\n        \"stateCode\": \"DL\"\r\n    },\r\n    \"purchase\": {\r\n        \"currency\": \"EUR\",\r\n        \"products\": [\r\n            {\r\n                \"name\": \"e-commerce\",\r\n                \"price\": \"10\"\r\n            }\r\n        ]\r\n    },\r\n    \"paymentMethod\": \"GOOGLEPAY\",\r\n    \"brand_id\": \"f1764688-d991-481b-be63-9ee7f33dcd31\",\r\n    \"success_redirect\": \"https://google.com/\",\r\n    \"pending_redirect\": \"https://app.paybomb.tech\",\r\n    \"failure_redirect\": \"https://facebook.com/\",\r\n    \"success_callback\": \"https://your.success.callback.com\",\r\n    \"failure_callback\": \"https://your.failure.callback.com\",\r\n    \"extraParam\": {\r\n        \"googlepay_param\": {\r\n            \"google_merchant_id\": \"merchant:1234567890\",\r\n            \"googlepay_decrypted_payload\": {\r\n                \"messageExpiration\": \"1735689600000\",\r\n                \"messageId\": \"AH2EjtfkYz...\",\r\n                \"paymentMethod\": \"CARD\",\r\n                \"paymentMethodDetails\": {\r\n                    \"pan\": \"4111111111111111\",\r\n                    \"expirationMonth\": 12,\r\n                    \"expirationYear\": 2027,\r\n                    \"authMethod\": \"CRYPTOGRAM_3DS\",\r\n                    \"cryptogram\": \"AgAAAAAABk4D...\",\r\n                    \"eciIndicator\": \"05\"\r\n                },\r\n                \"gatewayMerchantId\": \"your_gateway_merchant_id\"\r\n            }\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/purchases"},"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\r\n    \"message\": \"Error Message\",\r\n    \"code\": \"error_code\"\r\n}"}],"_postman_id":"b6f0a2f3-f04d-4a0d-8a37-c92a79b8b250"},{"name":"Get Status","id":"7394ccf0-c709-4e4a-8936-d43545aab895","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"url":"https://app.paybomb.tech/api/v1/purchases/{purchaseId}/","description":"<p>This API tells you about all the details of a purchase (PayIn), including its history</p>\n<h3 id=\"mandatory\">Mandatory</h3>\n<p>you need to pass the <code>PurchaseID</code> in the API URL</p>\n<h3 id=\"possible-value-of-status\">Possible Value of Status</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Status</strong></th>\n<th><strong>Notes</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>paid</td>\n<td>Transaction Successful</td>\n</tr>\n<tr>\n<td>payment_in_process</td>\n<td>Payment is under Processing</td>\n</tr>\n<tr>\n<td>expired</td>\n<td>Purchase has Expired.</td>\n</tr>\n<tr>\n<td>error</td>\n<td>Transaction has Failed.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"response-examples\">Response Examples</h3>\n<p>In the response examples you can see instances of both <code>Paid</code> and <code>Error</code> Status purchases.</p>\n<h3 id=\"error-details\">Error Details</h3>\n<p>If there are any issues on the Purchase you can get more details from the <code>transaction_data.attempts.error</code> attribute of the response object</p>\n<h3 id=\"errors\">Errors</h3>\n<p>If there are any errors then it'll be in the format of :</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"message\": \"descriptive error message\",\n    \"code\": \"error_code\"\n}\n\n</code></pre>\n<p>Please see the Status Code section for further details.</p>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"10a74d03-6fd9-44fa-855a-b85154a1da10","id":"10a74d03-6fd9-44fa-855a-b85154a1da10","name":"APIs","type":"folder"}},"urlObject":{"path":["purchases","{purchaseId}",""],"host":["https://app.paybomb.tech/api/v1"],"query":[],"variable":[]}},"response":[{"id":"ff790ecb-5ce6-4b09-8e1b-35a1c268b106","name":"Purchase - success","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json"},{"key":"Authorization","value":"Bearer Token"}],"url":"https://app.paybomb.tech/api/v1/purchases/{purchaseId}/"},"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\r\n    \"purchaseId\": \"69cce01f5bae56fd5547a993\",\r\n    \"client\": {\r\n        \"customerId\": \"NA\",\r\n        \"email\": \"himanshu1@paybomb.tech\",\r\n        \"full_name\": \"OpHM\",\r\n        \"date_of_birth\": \"1800-01-01\",\r\n        \"street_address\": \"SB-124\",\r\n        \"country\": \"BR\",\r\n        \"city\": \"DLJPR\",\r\n        \"zip_code\": \"110001\",\r\n        \"cc\": [],\r\n        \"bcc\": [],\r\n        \"stateCode\": \"DL\"\r\n    },\r\n    \"updated_on\": 1775034399,\r\n    \"type\": \"purchase\",\r\n    \"paymentMethod\": \"GOOGLEPAY\",\r\n    \"amountUnit\": \"MAJOR\",\r\n    \"errorMsg\": \"\",\r\n    \"errorCode\": \"NA\",\r\n    \"force_recurring\": false,\r\n    \"created_on\": 1775034399,\r\n    \"merchantRef\": \"69cce01f5bae56fd5547a993\",\r\n    \"purchase\": {\r\n        \"currency\": \"USD\",\r\n        \"products\": [\r\n            {\r\n                \"name\": \"e-commerce\",\r\n                \"quantity\": 1.0,\r\n                \"price\": 10.0,\r\n                \"discount\": 0,\r\n                \"tax_percent\": \"0.00\"\r\n            }\r\n        ],\r\n        \"total\": 10.0,\r\n        \"requestAmount\": 10.0,\r\n        \"language\": \"en\",\r\n        \"notes\": \"\",\r\n        \"debt\": 0,\r\n        \"total_formatted\": 1.0,\r\n        \"taxAmount\": 0.0,\r\n        \"taxPercent\": 0.0,\r\n        \"request_client_details\": [],\r\n        \"email_message\": \"\"\r\n    },\r\n    \"issuer_details\": {\r\n        \"website\": \"\",\r\n        \"legal_street_address\": \"\",\r\n        \"legal_country\": \"\",\r\n        \"legal_city\": \"\",\r\n        \"legal_zip_code\": \"\",\r\n        \"bank_accounts\": [\r\n            {}\r\n        ],\r\n        \"legal_name\": \"Omega Pixel\",\r\n        \"brand_name\": \"Omega Pixel\",\r\n        \"registration_number\": \"\",\r\n        \"tax_number\": \"\"\r\n    },\r\n    \"transaction_data\": {\r\n        \"payment_method\": \"\",\r\n        \"flow\": \"payform\",\r\n        \"extra\": {},\r\n        \"country\": \"\",\r\n        \"attempts\": []\r\n    },\r\n    \"status\": \"CREATED\",\r\n    \"status_history\": [\r\n        {\r\n            \"status\": \"created\",\r\n            \"timestamp\": 1775034399\r\n        }\r\n    ],\r\n    \"is_test\": false,\r\n    \"brand_id\": \"f1764688-d991-481b-be63-9ee7f33dcd31\",\r\n    \"send_receipt\": false,\r\n    \"is_recurring_token\": false,\r\n    \"skip_capture\": false,\r\n    \"reference_generated\": \"PS1032\",\r\n    \"issued\": \"2026-04-01\",\r\n    \"due\": 1775034399,\r\n    \"refund_upto\": 0,\r\n    \"cc_descriptor\": \"\",\r\n    \"fraudScore\": \"NA\",\r\n    \"trustScore\": \"NA\",\r\n    \"extraFee\": \"0\",\r\n    \"paidOn\": 0,\r\n    \"receivedAmt\": 0.0,\r\n    \"taxAmount\": 0.0,\r\n    \"surcharge\": 0.0,\r\n    \"surchargeType\": \"\",\r\n    \"sessionId\": \"\",\r\n    \"refund_availability\": \"NONE\",\r\n    \"refundable_amount\": 0.0,\r\n    \"success_redirect\": \"https://google.com/\",\r\n    \"failure_redirect\": \"https://facebook.com/\",\r\n    \"pending_redirect\": \"https://app.paybomb.tech\",\r\n    \"cancel_redirect\": \"\",\r\n    \"success_callback\": \"https://your.success.callback.com\",\r\n    \"failure_callback\": \"https://your.failure.callback.com\",\r\n    \"platform\": \"API\",\r\n    \"created_from_ip\": \"103.80.161.238\",\r\n    \"checkout_url\": \"https://api.choicepay.ca/payments/6b5a5977ac8e022facb31f3346f61ed0/\",\r\n    \"direct_post_url\": \"https://api.choicepay.ca/api/v1/p/69cce01f5bae56fd5547a993/\",\r\n    \"payoutProcess\": false\r\n}"},{"id":"f39db69b-b3d7-46aa-8e82-f3675be063d0","name":"Purchase - failure","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"url":"https://app.paybomb.tech/api/v1/purchases/{purchaseId}/"},"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\r\n    \"message\": \"Error Message\",\r\n    \"code\": \"error_code\"\r\n}"}],"_postman_id":"7394ccf0-c709-4e4a-8936-d43545aab895"}],"id":"10a74d03-6fd9-44fa-855a-b85154a1da10","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"f7b7015d-25c5-4b0e-8d9c-e6344b9a8b89"}},{"listen":"test","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"68cabbf7-255d-4e6a-8439-caae758e5bfe"}}],"_postman_id":"10a74d03-6fd9-44fa-855a-b85154a1da10","description":""}],"id":"de62fb1c-d00b-4fb8-ad45-931ff1045a45","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"912fd6dd-9379-432e-bd83-45e3741e045d"}},{"listen":"test","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"d1292fbb-1e90-4b10-b78c-c05083be33b2"}}],"_postman_id":"de62fb1c-d00b-4fb8-ad45-931ff1045a45","description":""},{"name":"🌎 Apple Pay (Seamless)","item":[{"name":"Concepts","item":[],"id":"78613d1e-3429-4750-9b9e-6d6a2c4343f9","description":"<h2 id=\"get-started\"><strong>Get started</strong></h2>\n<p>Paybomb’s Server-to-Server (S2S) integration for Apple Pay allows merchants to process Apple Pay transactions securely from their backend systems. In this model, merchants are responsible for generating the Apple Pay payment token on their client application and sending it to their server, which then communicates with Paybomb APIs.</p>\n<p>This integration uses DIRECT tokenization, where payment data is securely generated by Apple Pay and passed to Paybomb for processing.</p>\n<p>This integration is recommended for merchants who require:</p>\n<ul>\n<li><p>Integration with Apple Pay wallets</p>\n</li>\n<li><p>Secure handling of tokenized payment data</p>\n</li>\n<li><p>Flexibility in choosing PCI scope (encrypted vs decrypted flow)</p>\n</li>\n</ul>\n<hr />\n<h2 id=\"how-it-works\"><strong>How it works</strong></h2>\n<p>The Apple Pay S2S payment flow follows a two-step process:</p>\n<h4 id=\"1-generate-apple-pay-token-client-side\"><strong>1. Generate</strong> Apple <strong>Pay Token (Client-side)</strong></h4>\n<p>The merchant integrates Apple Pay SDK (Web/Android) to generate a payment token using DIRECT flow.</p>\n<h4 id=\"2-submit-token-via-s2s\"><strong>2. Submit Token via S2S</strong></h4>\n<p>The merchant server sends the Apple Pay token (encrypted or decrypted) to Paybomb via the /purchase API.</p>\n<hr />\n<h2 id=\"apple-pay-processing-overview\">Apple <strong>Pay Processing Overview</strong></h2>\n<p>Apple Pay transactions are processed as card-not-present payments using:</p>\n<ul>\n<li><p>Tokenized card data (DPAN)</p>\n</li>\n<li><p>Cryptogram generated by Apple</p>\n</li>\n<li><p>Device-based authentication (Face ID / Touch ID / Passcode)</p>\n</li>\n</ul>\n<p>These transactions go through:</p>\n<ul>\n<li><p>Card network (Visa, Mastercard, Amex, etc.)</p>\n</li>\n<li><p>Issuing bank authorization</p>\n</li>\n<li><p>Risk and fraud checks</p>\n</li>\n</ul>\n<hr />\n<h2 id=\"integration-options\">Integration Options</h2>\n<p>Paybomb supports two integration modes:</p>\n<hr />\n<h3 id=\"1-encrypted-token-flow-recommended\">1. Encrypted Token Flow (Recommended)</h3>\n<p>In this flow, the merchant sends the encrypted Apple Pay token to Paybomb. Paybomb decrypts and processes the payment.</p>\n<h4 id=\"key-characteristics\">Key Characteristics</h4>\n<ul>\n<li><p>Merchant does not handle PAN</p>\n</li>\n<li><p>Reduced PCI scope</p>\n</li>\n<li><p>Recommended for most merchants</p>\n</li>\n</ul>\n<h4 id=\"pci-impact\">PCI Impact</h4>\n<p>Merchants can significantly reduce PCI DSS scope since sensitive card data is handled by Paybomb.</p>\n<hr />\n<h3 id=\"2-decrypted-token-flow\">2. Decrypted Token Flow</h3>\n<p>In this flow, the merchant decrypts the Apple Pay token and sends card details to Paybomb.</p>\n<h4 id=\"key-characteristics-1\">Key Characteristics</h4>\n<ul>\n<li><p>PAN/DPAN available at merchant side</p>\n</li>\n<li><p>Full control over payment data</p>\n</li>\n</ul>\n<h4 id=\"pci-impact-1\">PCI Impact</h4>\n<p>Merchants must be PCI DSS compliant (SAQ D) as they handle raw card data.</p>\n<hr />\n<h2 id=\"before-you-begin\">Before you begin</h2>\n<p>Ensure the following prerequisites are met:</p>\n<ul>\n<li><p>You have received your API credentials from Paybomb</p>\n</li>\n<li><p>You have an Apple Merchant ID</p>\n</li>\n<li><p>You have configured Apple Pay on your domain/app</p>\n</li>\n<li><p>Your server can make secure HTTPS requests</p>\n</li>\n<li><p>You have a valid brand_id provided by Paybomb</p>\n</li>\n</ul>\n<hr />\n<h3 id=\"additional-requirements-encrypted-flow\">Additional Requirements (Encrypted Flow)</h3>\n<ul>\n<li><p>Configure Apple Pay certificates (Payment Processing Certificate)</p>\n</li>\n<li><p>Share certificate details securely with Paybomb (if required)</p>\n</li>\n</ul>\n<hr />\n<h3 id=\"additional-requirements-decrypted-flow\">Additional Requirements (Decrypted Flow)</h3>\n<ul>\n<li><p>Implement Apple Pay token decryption</p>\n</li>\n<li><p>Use Apple’s Payment Processing certificate and private key</p>\n</li>\n<li><p>Ensure full PCI DSS compliance</p>\n</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"c931580a-3ccb-4810-9a49-6ac90843cad1"}},{"listen":"test","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"6cd62f15-6e03-4f21-8808-78e201bb14e1"}}],"_postman_id":"78613d1e-3429-4750-9b9e-6d6a2c4343f9"},{"name":"APIs","item":[{"name":"Purchases (Encrypted Flow)","id":"89c7d10d-6ddd-4cca-bf99-0b08f605f6c6","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Authorization","value":"Bearer Token"}],"body":{"mode":"raw","raw":"{\r\n    \"client\": {\r\n        \"email\": \"customer@example.com\"\r\n    },\r\n    \"purchase\": {\r\n        \"currency\": \"USD\",\r\n        \"products\": [\r\n            {\r\n                \"name\": \"Product\",\r\n                \"price\": \"10.00\"\r\n            }\r\n        ]\r\n    },\r\n    \"paymentMethod\": \"APPLEPAY\",\r\n    \"brand_id\": \"your_brand_id\",\r\n    \"success_redirect\": \"https://success.com\",\r\n    \"pending_redirect\": \"https://pending.com\",\r\n    \"failure_redirect\": \"https://failure.com\",\r\n    \"extraParam\": {\r\n        \"applepay_param\": {\r\n            \"applepay_token\": {\r\n                \"version\": \"EC_v1\",\r\n                \"data\": \"...\",\r\n                \"signature\": \"...\",\r\n                \"header\": {\r\n                    \"ephemeralPublicKey\": \"...\",\r\n                    \"publicKeyHash\": \"...\",\r\n                    \"transactionId\": \"...\"\r\n                }\r\n            }\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/purchases/","description":"<p>To process an Apple Pay transaction, a Purchase must be created using the /purchases API. The Apple Pay token must be included under extraParam.applepay_param.</p>\n<p>To generate a Purchase, you are required to provide the <code>Brand ID</code> (in the request body) and <code>API key</code> (in the header) Both can be located in the Dashboard section of your merchant account login.</p>\n<p>The request body structure is shown on the request body of the example request shown here.</p>\n<p>The following (see table below) are the mandatory parameters that are required to create a purchase request.</p>\n<h3 id=\"parameters-in-the-request-body\"><strong>Parameters in the request body:</strong></h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Notes</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>client.full_name</td>\n<td>Conditional.  <br />But Recommended to pass the complete name of the client. Atleast 2 words recommended.</td>\n</tr>\n<tr>\n<td>client.email</td>\n<td>Conditional.  <br />But Recommended to pass a correct email id.</td>\n</tr>\n<tr>\n<td>paymentMethod</td>\n<td>Conditional.  <br />Mandatory if you are not using Paybomb Cashier. Else Non Mandatory.  <br />Value: APPLEPAY</td>\n</tr>\n<tr>\n<td>purchase.currency</td>\n<td>Mandatory.  <br />ISO 4217 code for currency you want to send the transaction in. This should be 'BRL' for PIX.</td>\n</tr>\n<tr>\n<td>purchase.products.name</td>\n<td>Mandatory.</td>\n</tr>\n<tr>\n<td>purchase.products.price</td>\n<td>Mandatory.  <br />Price in decimal format upto 2 decimals.  <br />example 1:  <br />EUR 5 , should be sent as 5.00  <br />example 2:  <br />USD 10 and 37 cents , should be sent as 10.37</td>\n</tr>\n<tr>\n<td>brand_id</td>\n<td>Mandatory.  <br />Obtain from Dashboard section of your merchant account login.</td>\n</tr>\n<tr>\n<td>success_redirect</td>\n<td>Mandatory.  <br />URL to send the user if the transactions is successful.</td>\n</tr>\n<tr>\n<td>pending_redirect</td>\n<td>Mandatory.  <br />URL to send the user if the transactions is in progress state.</td>\n</tr>\n<tr>\n<td>failure_redirect</td>\n<td>Mandatory  <br />URL to send the user if the transactions has failed.</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"optional-parameters\">Optional Parameters</h2>\n<h3 id=\"expireinmin\">expireInMin</h3>\n<p>This parameter, when passed in the PayIn request, sets the time window within which a customer should make the Interac payment through their bank's app. If a customer doesn't complete the payment within the configured time window, the status of the payment will be marked as 'EXPIRED' in Paybomb.</p>\n<p>However, in certain cases, a payment made outside of this window could still be successful i.e. customer's account may be debited which would result in inconsistencies among Paybomb's, merchant's and customer's status of the transaction. To avoid such cases it is advised to set the expiry time limit appropriately and advise the customers to make payment within this window. However, if there is an inconsistency between the status at Paybomb and at customer's Bank, the merchant and Paybomb will reconcile the amounts during the settlement.</p>\n<h3 id=\"merchantref\">merchantRef</h3>\n<p>The <code>merchantRef</code> parameter, although not mandatory, is strongly advised for merchants to specify. Its inclusion offers two significant advantages for the merchant:</p>\n<ol>\n<li><p><strong>Prevention of Duplicate Requests:</strong> When a <code>merchantRef</code> is utilized, it acts as a unique identifier. This means that if a second purchase request is made using the same <code>merchantRef</code> (reference number), the system will recognize it and prevent duplicate transactions from occurring. This prevents unintended or duplicate purchases.</p>\n</li>\n<li><p><strong>Facilitation of Transaction Retrieval:</strong> In situations where the response from the initial purchase request times out or the 'purchaseId' isn't received, having the <code>merchantRef</code> allows the merchant to retrieve detailed transaction information. This ensures they can track and access the specific purchase details related to that reference, even if the immediate response was not received.</p>\n</li>\n</ol>\n<p>However, if the merchant does not specify the 'merchantRef' parameter, the platform will automatically assign and use an internal 'purchaseId' as a reference for that transaction.</p>\n<h3 id=\"paymentmethod\">paymentMethod</h3>\n<p>The <code>paymentMethod</code> parameter identifies which payment solution merchant wants to use to perform a transaction. If parameter is provided, than Paybomb will perform direct payment with the selected payment method instead of loading Paybomb URL.</p>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"d8f27861-65fd-4f57-8c8d-92d00fa7558e","id":"d8f27861-65fd-4f57-8c8d-92d00fa7558e","name":"APIs","type":"folder"}},"urlObject":{"path":["purchases",""],"host":["https://app.paybomb.tech/api/v1"],"query":[],"variable":[]}},"response":[{"id":"4ec1b38c-183e-45f7-b835-d137701f6ef6","name":"Purchase - success","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Authorization","value":"Bearer Token"}],"body":{"mode":"raw","raw":"{\r\n    \"client\": {\r\n        \"email\": \"customer@example.com\"\r\n    },\r\n    \"purchase\": {\r\n        \"currency\": \"USD\",\r\n        \"products\": [\r\n            {\r\n                \"name\": \"Product\",\r\n                \"price\": \"10.00\"\r\n            }\r\n        ]\r\n    },\r\n    \"paymentMethod\": \"APPLEPAY\",\r\n    \"brand_id\": \"your_brand_id\",\r\n    \"success_redirect\": \"https://success.com\",\r\n    \"pending_redirect\": \"https://pending.com\",\r\n    \"failure_redirect\": \"https://failure.com\",\r\n    \"extraParam\": {\r\n        \"applepay_param\": {\r\n            \"applepay_token\": {\r\n                \"version\": \"EC_v1\",\r\n                \"data\": \"...\",\r\n                \"signature\": \"...\",\r\n                \"header\": {\r\n                    \"ephemeralPublicKey\": \"...\",\r\n                    \"publicKeyHash\": \"...\",\r\n                    \"transactionId\": \"...\"\r\n                }\r\n            }\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/purchases"},"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\r\n    \"purchaseId\": \"69cce01f5bae56fd5547a993\",\r\n    \"client\": {\r\n        \"customerId\": \"NA\",\r\n        \"email\": \"himanshu1@paybomb.tech\",\r\n        \"full_name\": \"OpHM\",\r\n        \"date_of_birth\": \"1800-01-01\",\r\n        \"street_address\": \"SB-124\",\r\n        \"country\": \"BR\",\r\n        \"city\": \"DLJPR\",\r\n        \"zip_code\": \"110001\",\r\n        \"cc\": [],\r\n        \"bcc\": [],\r\n        \"stateCode\": \"DL\"\r\n    },\r\n    \"updated_on\": 1775034399,\r\n    \"type\": \"purchase\",\r\n    \"paymentMethod\": \"APPLEPAY\",\r\n    \"amountUnit\": \"MAJOR\",\r\n    \"errorMsg\": \"\",\r\n    \"errorCode\": \"NA\",\r\n    \"force_recurring\": false,\r\n    \"created_on\": 1775034399,\r\n    \"merchantRef\": \"69cce01f5bae56fd5547a993\",\r\n    \"purchase\": {\r\n        \"currency\": \"USD\",\r\n        \"products\": [\r\n            {\r\n                \"name\": \"e-commerce\",\r\n                \"quantity\": 1.0,\r\n                \"price\": 10.0,\r\n                \"discount\": 0,\r\n                \"tax_percent\": \"0.00\"\r\n            }\r\n        ],\r\n        \"total\": 10.0,\r\n        \"requestAmount\": 10.0,\r\n        \"language\": \"en\",\r\n        \"notes\": \"\",\r\n        \"debt\": 0,\r\n        \"total_formatted\": 1.0,\r\n        \"taxAmount\": 0.0,\r\n        \"taxPercent\": 0.0,\r\n        \"request_client_details\": [],\r\n        \"email_message\": \"\"\r\n    },\r\n    \"issuer_details\": {\r\n        \"website\": \"\",\r\n        \"legal_street_address\": \"\",\r\n        \"legal_country\": \"\",\r\n        \"legal_city\": \"\",\r\n        \"legal_zip_code\": \"\",\r\n        \"bank_accounts\": [\r\n            {}\r\n        ],\r\n        \"legal_name\": \"Omega Pixel\",\r\n        \"brand_name\": \"Omega Pixel\",\r\n        \"registration_number\": \"\",\r\n        \"tax_number\": \"\"\r\n    },\r\n    \"transaction_data\": {\r\n        \"payment_method\": \"\",\r\n        \"flow\": \"payform\",\r\n        \"extra\": {},\r\n        \"country\": \"\",\r\n        \"attempts\": []\r\n    },\r\n    \"status\": \"CREATED\",\r\n    \"status_history\": [\r\n        {\r\n            \"status\": \"created\",\r\n            \"timestamp\": 1775034399\r\n        }\r\n    ],\r\n    \"is_test\": false,\r\n    \"brand_id\": \"f1764688-d991-481b-be63-9ee7f33dcd31\",\r\n    \"send_receipt\": false,\r\n    \"is_recurring_token\": false,\r\n    \"skip_capture\": false,\r\n    \"reference_generated\": \"PS1032\",\r\n    \"issued\": \"2026-04-01\",\r\n    \"due\": 1775034399,\r\n    \"refund_upto\": 0,\r\n    \"cc_descriptor\": \"\",\r\n    \"fraudScore\": \"NA\",\r\n    \"trustScore\": \"NA\",\r\n    \"extraFee\": \"0\",\r\n    \"paidOn\": 0,\r\n    \"receivedAmt\": 0.0,\r\n    \"taxAmount\": 0.0,\r\n    \"surcharge\": 0.0,\r\n    \"surchargeType\": \"\",\r\n    \"sessionId\": \"\",\r\n    \"refund_availability\": \"NONE\",\r\n    \"refundable_amount\": 0.0,\r\n    \"success_redirect\": \"https://google.com/\",\r\n    \"failure_redirect\": \"https://facebook.com/\",\r\n    \"pending_redirect\": \"https://app.paybomb.tech\",\r\n    \"cancel_redirect\": \"\",\r\n    \"success_callback\": \"https://your.success.callback.com\",\r\n    \"failure_callback\": \"https://your.failure.callback.com\",\r\n    \"platform\": \"API\",\r\n    \"created_from_ip\": \"103.80.161.238\",\r\n    \"checkout_url\": \"https://api.choicepay.ca/payments/6b5a5977ac8e022facb31f3346f61ed0/\",\r\n    \"direct_post_url\": \"https://api.choicepay.ca/api/v1/p/69cce01f5bae56fd5547a993/\",\r\n    \"payoutProcess\": false\r\n}"},{"id":"6716ccae-8a7d-4d73-8deb-449b32d20f73","name":"Purchase - failure","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Authorization","value":"Bearer Token"}],"body":{"mode":"raw","raw":"{\r\n    \"client\": {\r\n        \"email\": \"customer@example.com\"\r\n    },\r\n    \"purchase\": {\r\n        \"currency\": \"USD\",\r\n        \"products\": [\r\n            {\r\n                \"name\": \"Product\",\r\n                \"price\": \"10.00\"\r\n            }\r\n        ]\r\n    },\r\n    \"paymentMethod\": \"APPLEPAY\",\r\n    \"brand_id\": \"your_brand_id\",\r\n    \"success_redirect\": \"https://success.com\",\r\n    \"pending_redirect\": \"https://pending.com\",\r\n    \"failure_redirect\": \"https://failure.com\",\r\n    \"extraParam\": {\r\n        \"applepay_param\": {\r\n            \"applepay_token\": {\r\n                \"version\": \"EC_v1\",\r\n                \"data\": \"...\",\r\n                \"signature\": \"...\",\r\n                \"header\": {\r\n                    \"ephemeralPublicKey\": \"...\",\r\n                    \"publicKeyHash\": \"...\",\r\n                    \"transactionId\": \"...\"\r\n                }\r\n            }\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/purchases"},"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\r\n    \"message\": \"Error Message\",\r\n    \"code\": \"error_code\"\r\n}"}],"_postman_id":"89c7d10d-6ddd-4cca-bf99-0b08f605f6c6"},{"name":"Purchases (Decrypted Flow)","id":"e53e191a-cc48-47a4-9125-bc42c6251680","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Authorization","value":"Bearer Token"}],"body":{"mode":"raw","raw":"{\r\n    \"client\": {\r\n        \"email\": \"customer@example.com\"\r\n    },\r\n    \"purchase\": {\r\n        \"currency\": \"USD\",\r\n        \"products\": [\r\n            {\r\n                \"name\": \"Product\",\r\n                \"price\": \"10.00\"\r\n            }\r\n        ]\r\n    },\r\n    \"paymentMethod\": \"APPLEPAY\",\r\n    \"brand_id\": \"your_brand_id\",\r\n    \"success_redirect\": \"https://success.com\",\r\n    \"pending_redirect\": \"https://pending.com\",\r\n    \"failure_redirect\": \"https://failure.com\",\r\n    \"extraParam\": {\r\n        \"applepay_param\": {\r\n            \"applepay_decrypted_payload\": {\r\n                \"applicationPrimaryAccountNumber\": \"4111111111111111\",\r\n                \"applicationExpirationDate\": \"2712\",\r\n                \"currencyCode\": \"840\",\r\n                \"transactionAmount\": 1000,\r\n                \"deviceManufacturerIdentifier\": \"040010030273\",\r\n                \"paymentDataType\": \"3DSecure\",\r\n                \"paymentData\": {\r\n                    \"onlinePaymentCryptogram\": \"AgAAAAAABk4D...\",\r\n                    \"eciIndicator\": \"05\"\r\n                }\r\n            }\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/purchases/","description":"<p>To process an Apple Pay transaction, a Purchase must be created using the /purchases API. The Apple Pay token must be included under extraParam.applepay_param.</p>\n<p>To generate a Purchase, you are required to provide the <code>Brand ID</code> (in the request body) and <code>API key</code> (in the header) Both can be located in the Dashboard section of your merchant account login.</p>\n<p>The request body structure is shown on the request body of the example request shown here.</p>\n<p>The following (see table below) are the mandatory parameters that are required to create a purchase request.</p>\n<h3 id=\"parameters-in-the-request-body\"><strong>Parameters in the request body:</strong></h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Notes</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>client.full_name</td>\n<td>Conditional.  <br />But Recommended to pass the complete name of the client. Atleast 2 words recommended.</td>\n</tr>\n<tr>\n<td>client.email</td>\n<td>Conditional.  <br />But Recommended to pass a correct email id.</td>\n</tr>\n<tr>\n<td>paymentMethod</td>\n<td>Conditional.  <br />Mandatory if you are not using Paybomb Cashier. Else Non Mandatory.  <br />Value: APPLEPAY</td>\n</tr>\n<tr>\n<td>purchase.currency</td>\n<td>Mandatory.  <br />ISO 4217 code for currency you want to send the transaction in. This should be 'BRL' for PIX.</td>\n</tr>\n<tr>\n<td>purchase.products.name</td>\n<td>Mandatory.</td>\n</tr>\n<tr>\n<td>purchase.products.price</td>\n<td>Mandatory.  <br />Price in decimal format upto 2 decimals.  <br />example 1:  <br />EUR 5 , should be sent as 5.00  <br />example 2:  <br />USD 10 and 37 cents , should be sent as 10.37</td>\n</tr>\n<tr>\n<td>brand_id</td>\n<td>Mandatory.  <br />Obtain from Dashboard section of your merchant account login.</td>\n</tr>\n<tr>\n<td>success_redirect</td>\n<td>Mandatory.  <br />URL to send the user if the transactions is successful.</td>\n</tr>\n<tr>\n<td>pending_redirect</td>\n<td>Mandatory.  <br />URL to send the user if the transactions is in progress state.</td>\n</tr>\n<tr>\n<td>failure_redirect</td>\n<td>Mandatory  <br />URL to send the user if the transactions has failed.</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"optional-parameters\">Optional Parameters</h2>\n<h3 id=\"expireinmin\">expireInMin</h3>\n<p>This parameter, when passed in the PayIn request, sets the time window within which a customer should make the Interac payment through their bank's app. If a customer doesn't complete the payment within the configured time window, the status of the payment will be marked as 'EXPIRED' in Paybomb.</p>\n<p>However, in certain cases, a payment made outside of this window could still be successful i.e. customer's account may be debited which would result in inconsistencies among Paybomb's, merchant's and customer's status of the transaction. To avoid such cases it is advised to set the expiry time limit appropriately and advise the customers to make payment within this window. However, if there is an inconsistency between the status at Paybomb and at customer's Bank, the merchant and Paybomb will reconcile the amounts during the settlement.</p>\n<h3 id=\"merchantref\">merchantRef</h3>\n<p>The <code>merchantRef</code> parameter, although not mandatory, is strongly advised for merchants to specify. Its inclusion offers two significant advantages for the merchant:</p>\n<ol>\n<li><p><strong>Prevention of Duplicate Requests:</strong> When a <code>merchantRef</code> is utilized, it acts as a unique identifier. This means that if a second purchase request is made using the same <code>merchantRef</code> (reference number), the system will recognize it and prevent duplicate transactions from occurring. This prevents unintended or duplicate purchases.</p>\n</li>\n<li><p><strong>Facilitation of Transaction Retrieval:</strong> In situations where the response from the initial purchase request times out or the 'purchaseId' isn't received, having the <code>merchantRef</code> allows the merchant to retrieve detailed transaction information. This ensures they can track and access the specific purchase details related to that reference, even if the immediate response was not received.</p>\n</li>\n</ol>\n<p>However, if the merchant does not specify the 'merchantRef' parameter, the platform will automatically assign and use an internal 'purchaseId' as a reference for that transaction.</p>\n<h3 id=\"paymentmethod\">paymentMethod</h3>\n<p>The <code>paymentMethod</code> parameter identifies which payment solution merchant wants to use to perform a transaction. If parameter is provided, than Paybomb will perform direct payment with the selected payment method instead of loading Paybomb URL.</p>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"d8f27861-65fd-4f57-8c8d-92d00fa7558e","id":"d8f27861-65fd-4f57-8c8d-92d00fa7558e","name":"APIs","type":"folder"}},"urlObject":{"path":["purchases",""],"host":["https://app.paybomb.tech/api/v1"],"query":[],"variable":[]}},"response":[{"id":"2106dd8e-74be-4381-8331-ac448033c15c","name":"Purchase - success","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Authorization","value":"Bearer Token"}],"body":{"mode":"raw","raw":"{\r\n    \"client\": {\r\n        \"email\": \"customer@example.com\"\r\n    },\r\n    \"purchase\": {\r\n        \"currency\": \"USD\",\r\n        \"products\": [\r\n            {\r\n                \"name\": \"Product\",\r\n                \"price\": \"10.00\"\r\n            }\r\n        ]\r\n    },\r\n    \"paymentMethod\": \"APPLEPAY\",\r\n    \"brand_id\": \"your_brand_id\",\r\n    \"success_redirect\": \"https://success.com\",\r\n    \"pending_redirect\": \"https://pending.com\",\r\n    \"failure_redirect\": \"https://failure.com\",\r\n    \"extraParam\": {\r\n        \"applepay_param\": {\r\n            \"applepay_decrypted_payload\": {\r\n                \"applicationPrimaryAccountNumber\": \"4111111111111111\",\r\n                \"applicationExpirationDate\": \"2712\",\r\n                \"currencyCode\": \"840\",\r\n                \"transactionAmount\": 1000,\r\n                \"deviceManufacturerIdentifier\": \"040010030273\",\r\n                \"paymentDataType\": \"3DSecure\",\r\n                \"paymentData\": {\r\n                    \"onlinePaymentCryptogram\": \"AgAAAAAABk4D...\",\r\n                    \"eciIndicator\": \"05\"\r\n                }\r\n            }\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/purchases"},"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\r\n    \"purchaseId\": \"69cce01f5bae56fd5547a993\",\r\n    \"client\": {\r\n        \"customerId\": \"NA\",\r\n        \"email\": \"himanshu1@paybomb.tech\",\r\n        \"full_name\": \"OpHM\",\r\n        \"date_of_birth\": \"1800-01-01\",\r\n        \"street_address\": \"SB-124\",\r\n        \"country\": \"BR\",\r\n        \"city\": \"DLJPR\",\r\n        \"zip_code\": \"110001\",\r\n        \"cc\": [],\r\n        \"bcc\": [],\r\n        \"stateCode\": \"DL\"\r\n    },\r\n    \"updated_on\": 1775034399,\r\n    \"type\": \"purchase\",\r\n    \"paymentMethod\": \"APPLEPAY\",\r\n    \"amountUnit\": \"MAJOR\",\r\n    \"errorMsg\": \"\",\r\n    \"errorCode\": \"NA\",\r\n    \"force_recurring\": false,\r\n    \"created_on\": 1775034399,\r\n    \"merchantRef\": \"69cce01f5bae56fd5547a993\",\r\n    \"purchase\": {\r\n        \"currency\": \"USD\",\r\n        \"products\": [\r\n            {\r\n                \"name\": \"e-commerce\",\r\n                \"quantity\": 1.0,\r\n                \"price\": 10.0,\r\n                \"discount\": 0,\r\n                \"tax_percent\": \"0.00\"\r\n            }\r\n        ],\r\n        \"total\": 10.0,\r\n        \"requestAmount\": 10.0,\r\n        \"language\": \"en\",\r\n        \"notes\": \"\",\r\n        \"debt\": 0,\r\n        \"total_formatted\": 1.0,\r\n        \"taxAmount\": 0.0,\r\n        \"taxPercent\": 0.0,\r\n        \"request_client_details\": [],\r\n        \"email_message\": \"\"\r\n    },\r\n    \"issuer_details\": {\r\n        \"website\": \"\",\r\n        \"legal_street_address\": \"\",\r\n        \"legal_country\": \"\",\r\n        \"legal_city\": \"\",\r\n        \"legal_zip_code\": \"\",\r\n        \"bank_accounts\": [\r\n            {}\r\n        ],\r\n        \"legal_name\": \"Omega Pixel\",\r\n        \"brand_name\": \"Omega Pixel\",\r\n        \"registration_number\": \"\",\r\n        \"tax_number\": \"\"\r\n    },\r\n    \"transaction_data\": {\r\n        \"payment_method\": \"\",\r\n        \"flow\": \"payform\",\r\n        \"extra\": {},\r\n        \"country\": \"\",\r\n        \"attempts\": []\r\n    },\r\n    \"status\": \"CREATED\",\r\n    \"status_history\": [\r\n        {\r\n            \"status\": \"created\",\r\n            \"timestamp\": 1775034399\r\n        }\r\n    ],\r\n    \"is_test\": false,\r\n    \"brand_id\": \"f1764688-d991-481b-be63-9ee7f33dcd31\",\r\n    \"send_receipt\": false,\r\n    \"is_recurring_token\": false,\r\n    \"skip_capture\": false,\r\n    \"reference_generated\": \"PS1032\",\r\n    \"issued\": \"2026-04-01\",\r\n    \"due\": 1775034399,\r\n    \"refund_upto\": 0,\r\n    \"cc_descriptor\": \"\",\r\n    \"fraudScore\": \"NA\",\r\n    \"trustScore\": \"NA\",\r\n    \"extraFee\": \"0\",\r\n    \"paidOn\": 0,\r\n    \"receivedAmt\": 0.0,\r\n    \"taxAmount\": 0.0,\r\n    \"surcharge\": 0.0,\r\n    \"surchargeType\": \"\",\r\n    \"sessionId\": \"\",\r\n    \"refund_availability\": \"NONE\",\r\n    \"refundable_amount\": 0.0,\r\n    \"success_redirect\": \"https://google.com/\",\r\n    \"failure_redirect\": \"https://facebook.com/\",\r\n    \"pending_redirect\": \"https://app.paybomb.tech\",\r\n    \"cancel_redirect\": \"\",\r\n    \"success_callback\": \"https://your.success.callback.com\",\r\n    \"failure_callback\": \"https://your.failure.callback.com\",\r\n    \"platform\": \"API\",\r\n    \"created_from_ip\": \"103.80.161.238\",\r\n    \"checkout_url\": \"https://api.choicepay.ca/payments/6b5a5977ac8e022facb31f3346f61ed0/\",\r\n    \"direct_post_url\": \"https://api.choicepay.ca/api/v1/p/69cce01f5bae56fd5547a993/\",\r\n    \"payoutProcess\": false\r\n}"},{"id":"c2fef133-859a-4f76-b48e-0796bb43bed2","name":"Purchase - failure","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Authorization","value":"Bearer Token"}],"body":{"mode":"raw","raw":"{\r\n    \"client\": {\r\n        \"email\": \"customer@example.com\"\r\n    },\r\n    \"purchase\": {\r\n        \"currency\": \"USD\",\r\n        \"products\": [\r\n            {\r\n                \"name\": \"Product\",\r\n                \"price\": \"10.00\"\r\n            }\r\n        ]\r\n    },\r\n    \"paymentMethod\": \"APPLEPAY\",\r\n    \"brand_id\": \"your_brand_id\",\r\n    \"success_redirect\": \"https://success.com\",\r\n    \"pending_redirect\": \"https://pending.com\",\r\n    \"failure_redirect\": \"https://failure.com\",\r\n    \"extraParam\": {\r\n        \"applepay_param\": {\r\n            \"applepay_decrypted_payload\": {\r\n                \"applicationPrimaryAccountNumber\": \"4111111111111111\",\r\n                \"applicationExpirationDate\": \"2712\",\r\n                \"currencyCode\": \"840\",\r\n                \"transactionAmount\": 1000,\r\n                \"deviceManufacturerIdentifier\": \"040010030273\",\r\n                \"paymentDataType\": \"3DSecure\",\r\n                \"paymentData\": {\r\n                    \"onlinePaymentCryptogram\": \"AgAAAAAABk4D...\",\r\n                    \"eciIndicator\": \"05\"\r\n                }\r\n            }\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/purchases"},"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\r\n    \"message\": \"Error Message\",\r\n    \"code\": \"error_code\"\r\n}"}],"_postman_id":"e53e191a-cc48-47a4-9125-bc42c6251680"},{"name":"Get Status","id":"0b0e00d3-bac5-4263-896f-c9cc33cb312a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"url":"https://app.paybomb.tech/api/v1/purchases/{purchaseId}/","description":"<p>This API tells you about all the details of a purchase (PayIn), including its history</p>\n<h3 id=\"mandatory\">Mandatory</h3>\n<p>you need to pass the <code>PurchaseID</code> in the API URL</p>\n<h3 id=\"possible-value-of-status\">Possible Value of Status</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Status</strong></th>\n<th><strong>Notes</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>paid</td>\n<td>Transaction Successful</td>\n</tr>\n<tr>\n<td>payment_in_process</td>\n<td>Payment is under Processing</td>\n</tr>\n<tr>\n<td>expired</td>\n<td>Purchase has Expired.</td>\n</tr>\n<tr>\n<td>error</td>\n<td>Transaction has Failed.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"response-examples\">Response Examples</h3>\n<p>In the response examples you can see instances of both <code>Paid</code> and <code>Error</code> Status purchases.</p>\n<h3 id=\"error-details\">Error Details</h3>\n<p>If there are any issues on the Purchase you can get more details from the <code>transaction_data.attempts.error</code> attribute of the response object</p>\n<h3 id=\"errors\">Errors</h3>\n<p>If there are any errors then it'll be in the format of :</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"message\": \"descriptive error message\",\n    \"code\": \"error_code\"\n}\n\n</code></pre>\n<p>Please see the Status Code section for further details.</p>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"d8f27861-65fd-4f57-8c8d-92d00fa7558e","id":"d8f27861-65fd-4f57-8c8d-92d00fa7558e","name":"APIs","type":"folder"}},"urlObject":{"path":["purchases","{purchaseId}",""],"host":["https://app.paybomb.tech/api/v1"],"query":[],"variable":[]}},"response":[{"id":"484936b0-719b-4acb-b8e5-4329b05748d5","name":"Purchase - success","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json"},{"key":"Authorization","value":"Bearer Token"}],"url":"https://app.paybomb.tech/api/v1/purchases/{purchaseId}/"},"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\r\n    \"purchaseId\": \"69cce01f5bae56fd5547a993\",\r\n    \"client\": {\r\n        \"customerId\": \"NA\",\r\n        \"email\": \"himanshu1@paybomb.tech\",\r\n        \"full_name\": \"OpHM\",\r\n        \"date_of_birth\": \"1800-01-01\",\r\n        \"street_address\": \"SB-124\",\r\n        \"country\": \"BR\",\r\n        \"city\": \"DLJPR\",\r\n        \"zip_code\": \"110001\",\r\n        \"cc\": [],\r\n        \"bcc\": [],\r\n        \"stateCode\": \"DL\"\r\n    },\r\n    \"updated_on\": 1775034399,\r\n    \"type\": \"purchase\",\r\n    \"paymentMethod\": \"GOOGLEPAY\",\r\n    \"amountUnit\": \"MAJOR\",\r\n    \"errorMsg\": \"\",\r\n    \"errorCode\": \"NA\",\r\n    \"force_recurring\": false,\r\n    \"created_on\": 1775034399,\r\n    \"merchantRef\": \"69cce01f5bae56fd5547a993\",\r\n    \"purchase\": {\r\n        \"currency\": \"USD\",\r\n        \"products\": [\r\n            {\r\n                \"name\": \"e-commerce\",\r\n                \"quantity\": 1.0,\r\n                \"price\": 10.0,\r\n                \"discount\": 0,\r\n                \"tax_percent\": \"0.00\"\r\n            }\r\n        ],\r\n        \"total\": 10.0,\r\n        \"requestAmount\": 10.0,\r\n        \"language\": \"en\",\r\n        \"notes\": \"\",\r\n        \"debt\": 0,\r\n        \"total_formatted\": 1.0,\r\n        \"taxAmount\": 0.0,\r\n        \"taxPercent\": 0.0,\r\n        \"request_client_details\": [],\r\n        \"email_message\": \"\"\r\n    },\r\n    \"issuer_details\": {\r\n        \"website\": \"\",\r\n        \"legal_street_address\": \"\",\r\n        \"legal_country\": \"\",\r\n        \"legal_city\": \"\",\r\n        \"legal_zip_code\": \"\",\r\n        \"bank_accounts\": [\r\n            {}\r\n        ],\r\n        \"legal_name\": \"Omega Pixel\",\r\n        \"brand_name\": \"Omega Pixel\",\r\n        \"registration_number\": \"\",\r\n        \"tax_number\": \"\"\r\n    },\r\n    \"transaction_data\": {\r\n        \"payment_method\": \"\",\r\n        \"flow\": \"payform\",\r\n        \"extra\": {},\r\n        \"country\": \"\",\r\n        \"attempts\": []\r\n    },\r\n    \"status\": \"CREATED\",\r\n    \"status_history\": [\r\n        {\r\n            \"status\": \"created\",\r\n            \"timestamp\": 1775034399\r\n        }\r\n    ],\r\n    \"is_test\": false,\r\n    \"brand_id\": \"f1764688-d991-481b-be63-9ee7f33dcd31\",\r\n    \"send_receipt\": false,\r\n    \"is_recurring_token\": false,\r\n    \"skip_capture\": false,\r\n    \"reference_generated\": \"PS1032\",\r\n    \"issued\": \"2026-04-01\",\r\n    \"due\": 1775034399,\r\n    \"refund_upto\": 0,\r\n    \"cc_descriptor\": \"\",\r\n    \"fraudScore\": \"NA\",\r\n    \"trustScore\": \"NA\",\r\n    \"extraFee\": \"0\",\r\n    \"paidOn\": 0,\r\n    \"receivedAmt\": 0.0,\r\n    \"taxAmount\": 0.0,\r\n    \"surcharge\": 0.0,\r\n    \"surchargeType\": \"\",\r\n    \"sessionId\": \"\",\r\n    \"refund_availability\": \"NONE\",\r\n    \"refundable_amount\": 0.0,\r\n    \"success_redirect\": \"https://google.com/\",\r\n    \"failure_redirect\": \"https://facebook.com/\",\r\n    \"pending_redirect\": \"https://app.paybomb.tech\",\r\n    \"cancel_redirect\": \"\",\r\n    \"success_callback\": \"https://your.success.callback.com\",\r\n    \"failure_callback\": \"https://your.failure.callback.com\",\r\n    \"platform\": \"API\",\r\n    \"created_from_ip\": \"103.80.161.238\",\r\n    \"checkout_url\": \"https://api.choicepay.ca/payments/6b5a5977ac8e022facb31f3346f61ed0/\",\r\n    \"direct_post_url\": \"https://api.choicepay.ca/api/v1/p/69cce01f5bae56fd5547a993/\",\r\n    \"payoutProcess\": false\r\n}"},{"id":"fa01cf26-0abe-49b3-8c86-5dff1b001d65","name":"Purchase - failure","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"url":"https://app.paybomb.tech/api/v1/purchases/{purchaseId}/"},"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\r\n    \"message\": \"Error Message\",\r\n    \"code\": \"error_code\"\r\n}"}],"_postman_id":"0b0e00d3-bac5-4263-896f-c9cc33cb312a"}],"id":"d8f27861-65fd-4f57-8c8d-92d00fa7558e","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"162f8af0-6223-4bf1-8771-305a947651b3"}},{"listen":"test","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"242771cd-eab9-451a-9f25-16752ef78b12"}}],"_postman_id":"d8f27861-65fd-4f57-8c8d-92d00fa7558e","description":""}],"id":"543e945e-e2ab-4d45-9e7f-7846fadf8f19","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"8f649ede-2d7b-4edc-ac00-1b987a71e95d"}},{"listen":"test","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"ba5b300d-9540-49fd-9e13-07d9380404c6"}}],"_postman_id":"543e945e-e2ab-4d45-9e7f-7846fadf8f19","description":""}],"id":"ee6708dd-bd6f-47cc-bee8-e56002ce1f8f","_postman_id":"ee6708dd-bd6f-47cc-bee8-e56002ce1f8f","description":""}],"id":"80cdee1d-b7b0-43db-bd12-183de874912b","_postman_id":"80cdee1d-b7b0-43db-bd12-183de874912b","description":""},{"name":"Trust Score","item":[{"name":"TrustScore Detailed","id":"31d40cc1-df1f-4ea5-99d0-478ea82a4ade","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"requiredinput\": {\r\n        \"ip\": \"111.11.11.11\",\r\n        \"email\": \"test@gmail.com\",\r\n        \"url\": \"https://www.asos.com/\"\r\n    },\r\n    \"optionalInput\": {\r\n        \"last_bets\": null,\r\n        \"last_wins\": \"\",\r\n        \"total_bonuses\": \"\",\r\n        \"last_real_bets\": \"\",\r\n        \"last_real_wins\": \"\",\r\n        \"total_deposits\": \"\",\r\n        \"last_bonus_bets\": \"\",\r\n        \"last_bonus_wins\": \"\",\r\n        \"average_real_bet\": \"\",\r\n        \"last_bets_amount\": \"\",\r\n        \"last_wins_amount\": \"\",\r\n        \"average_bonus_bet\": \"\",\r\n        \"bonus_to_deposits\": \"\",\r\n        \"last_deposit_date\": \"\",\r\n        \"total_withdrawals\": \"\",\r\n        \"is_phone_confirmed\": \"\",\r\n        \"money_in_money_out\": \"\",\r\n        \"last_deposit_amount\": \"\",\r\n        \"last_freespins_date\": \"\",\r\n        \"last_freespins_name\": \"\",\r\n        \"last_free_bonus_date\": \"\",\r\n        \"last_free_bonus_name\": \"\",\r\n        \"total_bonuses_amount\": \"\",\r\n        \"last_freespins_amount\": \"\",\r\n        \"last_freespins_status\": \"\",\r\n        \"last_real_bets_amount\": \"\",\r\n        \"last_real_wins_amount\": \"\",\r\n        \"total_deposits_amount\": \"\",\r\n        \"last_bonus_bets_amount\": \"\",\r\n        \"last_bonus_wins_amount\": \"\",\r\n        \"last_free_bonus_amount\": \"\",\r\n        \"last_free_bonus_status\": \"\",\r\n        \"last_deposit_bonus_date\": \"\",\r\n        \"last_deposit_bonus_name\": \"\",\r\n        \"last_freespins_currency\": \"\",\r\n        \"last_freespins_wagering\": \"\",\r\n        \"withdrawals_to_deposits\": \"\",\r\n        \"last_free_bonus_currency\": \"\",\r\n        \"last_free_bonus_wagering\": \"\",\r\n        \"total_withdrawals_amount\": \"\",\r\n        \"withdrawal_ewallet_email\": \"\",\r\n        \"last_deposit_bonus_amount\": \"\",\r\n        \"last_deposit_bonus_status\": \"\",\r\n        \"last_deposit_bonus_currency\": \"\",\r\n        \"last_deposit_bonus_wagering\": \"\",\r\n        \"session\": \"\",\r\n        \"payment_mode\": \"\",\r\n        \"card_fullname\": \"\",\r\n        \"card_bin\": \"\",\r\n        \"card_hash\": \"\",\r\n        \"card_last\": \"\",\r\n        \"card_expire\": \"\",\r\n        \"avs_result\": \"\",\r\n        \"cvv_result\": \"\",\r\n        \"sca_method\": \"\",\r\n        \"user_bank_account\": \"\",\r\n        \"user_bank_name\": \"\",\r\n        \"user_balance\": \"\",\r\n        \"user_verification_level\": \"\",\r\n        \"status_3d\": \"\",\r\n        \"regulation\": \"\",\r\n        \"payment_provider\": \"\",\r\n        \"phone_number\": \"\",\r\n        \"transaction_type\": \"\",\r\n        \"transaction_amount\": \"\",\r\n        \"transaction_currency\": \"\",\r\n        \"merchant_id\": \"\",\r\n        \"details_url\": \"\",\r\n        \"name\": \"\",\r\n        \"person_type\": \"\",\r\n        \"gender\": \"\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/trustScore","description":"<h3 id=\"overview\">Overview</h3>\n<p>Paybomb TrustScore's proprietary API combines email, phone number, IP and URL so that you can request and receive a user trust score from our enriched data, rules, and scoring in a single API call.</p>\n<p>Our take on Trust is different from the usual approach to fraud. This API tells you how much you can trust this user. It’s based on 100+ data points to which we have access. We use complex algorithms based on data sanity and customer behaviour in our partner network.</p>\n<p>Also, the additional optional parameter would be used to boost the accuracy of our response. So the more data we get the better we can ascertain the users' trust. So please endeavour to send as much information about the user as possible.</p>\n<h3 id=\"trust-score--usage\"><strong>Trust Score &amp; Usage</strong></h3>\n<p>TrustScore offers two distinct endpoints: <code>General</code> and <code>Detailed</code>.</p>\n<p>The General endpoint provides basic information by indicating whether a transaction is permitted or not. It gives a simple 'yes' or 'no' response regarding whether the transaction can proceed.</p>\n<p>On the other hand, the Detailed endpoint offers a more comprehensive evaluation. It furnishes an in-depth analysis of the transaction's authenticity, providing a detailed assessment beyond a simple allowance or denial, offering nuanced insights and information about the transaction's legitimacy.</p>\n<h3 id=\"detailed-trustscore\">Detailed TrustScore</h3>\n<p>Trust scores range from 0 to 5. A trust score of 0 indicates that we have limited information about the user, and it corresponds to the lowest level of trust. In addition to the TrustScore, we offer eight other flags to help assess the user's overall profile and determine appropriate actions to take. We suggest flagging or blocking users, transactions, or clicks as high risk based on a combination of the following factors: email deliverability, proxy usage, VPN usage, Tor usage, and recent abusive behavior.</p>\n<p>Every company has a unique target audience, so you might achieve better results by only flagging or blocking entities with low trust scores and recent instances of abuse. Keep in mind that mobile IP addresses are frequently misused and recycled by mobile carriers. Therefore, for mobile lookups, we advise giving more weight to the trust score, VPN usage, and Tor usage, as opposed to proxy usage.</p>\n<h3 id=\"permission\"><strong>Permission</strong></h3>\n<p>Access to this API has to be given to you by the admin. So please contact your sales representative at Paybomb to get access to this API, if you get a 401 error of \"You are not allowed to call this API service\".</p>\n<h3 id=\"mandatory-parameters-in-body\">Mandatory Parameters (in body)</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameters</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>ip</td>\n<td>IP of the user. Both IP4 and IP6 are valid</td>\n</tr>\n<tr>\n<td>email</td>\n<td>The email id of the user you want to trust score on</td>\n</tr>\n<tr>\n<td>url</td>\n<td>The URL on which the user is trying to purchase or consume a product, service or data.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"other-optional-paramters\">Other optional paramters:</h3>\n<p>The optional parameters are self-explanatory and appropriate values can be given in string format.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameters</strong></th>\n<th><strong>Values</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>last_bets</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_wins</td>\n<td>String</td>\n</tr>\n<tr>\n<td>total_bonuses</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_real_bets</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_real_wins</td>\n<td>String</td>\n</tr>\n<tr>\n<td>total_deposits</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_bonus_bets</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_bonus_wins</td>\n<td>String</td>\n</tr>\n<tr>\n<td>average_real_bet</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_bets_amount</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_wins_amount</td>\n<td>String</td>\n</tr>\n<tr>\n<td>average_bonus_bet</td>\n<td>String</td>\n</tr>\n<tr>\n<td>bonus_to_deposits</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_deposit_date</td>\n<td>String</td>\n</tr>\n<tr>\n<td>total_withdrawals</td>\n<td>String</td>\n</tr>\n<tr>\n<td>is_phone_confirmed</td>\n<td>String</td>\n</tr>\n<tr>\n<td>money_in_money_out</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_deposit_amount</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_freespins_date</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_freespins_name</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_free_bonus_date</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_free_bonus_name</td>\n<td>String</td>\n</tr>\n<tr>\n<td>total_bonuses_amount</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_freespins_amount</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_freespins_status</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_real_bets_amount</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_real_wins_amount</td>\n<td>String</td>\n</tr>\n<tr>\n<td>total_deposits_amount</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_bonus_bets_amount</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_bonus_wins_amount</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_free_bonus_amount</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_free_bonus_status</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_deposit_bonus_date</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_deposit_bonus_name</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_freespins_currency</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_freespins_wagering</td>\n<td>String</td>\n</tr>\n<tr>\n<td>withdrawals_to_deposits</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_free_bonus_currency</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_free_bonus_wagering</td>\n<td>String</td>\n</tr>\n<tr>\n<td>total_withdrawals_amount</td>\n<td>String</td>\n</tr>\n<tr>\n<td>withdrawal_ewallet_email</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_deposit_bonus_amount</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_deposit_bonus_status</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_deposit_bonus_currency</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_deposit_bonus_wagering</td>\n<td>String</td>\n</tr>\n<tr>\n<td>session</td>\n<td>String</td>\n</tr>\n<tr>\n<td>payment_mode</td>\n<td>String</td>\n</tr>\n<tr>\n<td>card_fullname</td>\n<td>String</td>\n</tr>\n<tr>\n<td>card_bin</td>\n<td>String</td>\n</tr>\n<tr>\n<td>card_hash</td>\n<td>String</td>\n</tr>\n<tr>\n<td>card_last</td>\n<td>String</td>\n</tr>\n<tr>\n<td>card_expire</td>\n<td>String</td>\n</tr>\n<tr>\n<td>avs_result</td>\n<td>String</td>\n</tr>\n<tr>\n<td>cvv_result</td>\n<td>String</td>\n</tr>\n<tr>\n<td>sca_method</td>\n<td>String</td>\n</tr>\n<tr>\n<td>user_bank_account</td>\n<td>String</td>\n</tr>\n<tr>\n<td>user_bank_name</td>\n<td>String</td>\n</tr>\n<tr>\n<td>user_balance</td>\n<td>String</td>\n</tr>\n<tr>\n<td>user_verification_level</td>\n<td>String</td>\n</tr>\n<tr>\n<td>status_3d</td>\n<td>String</td>\n</tr>\n<tr>\n<td>regulation</td>\n<td>String</td>\n</tr>\n<tr>\n<td>payment_provider</td>\n<td>String</td>\n</tr>\n<tr>\n<td>phone_number</td>\n<td>String</td>\n</tr>\n<tr>\n<td>transaction_type</td>\n<td>String</td>\n</tr>\n<tr>\n<td>transaction_amount</td>\n<td>String</td>\n</tr>\n<tr>\n<td>transaction_currency</td>\n<td>String</td>\n</tr>\n<tr>\n<td>merchant_id</td>\n<td>String</td>\n</tr>\n<tr>\n<td>details_url</td>\n<td>String</td>\n</tr>\n<tr>\n<td>name</td>\n<td>String</td>\n</tr>\n<tr>\n<td>person_type</td>\n<td>String</td>\n</tr>\n<tr>\n<td>gender</td>\n<td>String</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"response\">Response</h3>\n<p>In the response examples, you can observe both instances of a successful TrustScore response and an unsuccessful one.</p>\n<p>Please note that there are a lot of parameters to determine the trust level and give you some additional details on the email and IP of the user.</p>\n<p>in a successful trust score call the following data would be provided:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Response Item</strong></th>\n<th><strong>Description</strong></th>\n<th><strong>Possible Values</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>trustScore</td>\n<td>The trust score attributed to the user by our algorithms</td>\n<td>Integer 0 to 5</td>\n</tr>\n<tr>\n<td>deliverable</td>\n<td>Whether the email is deliverable, usually false means it wouldn't be a trustable user.</td>\n<td><strong>Boolean</strong></td>\n</tr>\n<tr>\n<td>proxy</td>\n<td>Is this IP address suspected to be a proxy? (SOCKS, Elite, Anonymous, VPN, Tor, etc.)</td>\n<td><strong>Boolean</strong></td>\n</tr>\n<tr>\n<td>vpn</td>\n<td>Is this IP suspected of being a VPN connection? This can include data center ranges which can become active VPNs at any time. The \"proxy\" status will always be true when this value is true.</td>\n<td><strong>Boolean</strong></td>\n</tr>\n<tr>\n<td>tor</td>\n<td>Is this IP suspected of being a TOR connection? This can include previously active TOR nodes and exits which can become active TOR exits at any time. The \"proxy\" status will always be true when this value is true.</td>\n<td><strong>Boolean</strong></td>\n</tr>\n<tr>\n<td>active_vpn</td>\n<td>Identifies active VPN connections used by popular VPN services and private VPN servers.</td>\n<td><strong>Boolean</strong></td>\n</tr>\n<tr>\n<td>active_tor</td>\n<td>Identifies active TOR exits on the TOR network.</td>\n<td><strong>Boolean</strong></td>\n</tr>\n<tr>\n<td>recent_abuse</td>\n<td>This value indicates whether the IP address has been associated with any recently verified abuse on our network, such as a confirmed chargeback, compromised device, or fake app install.</td>\n<td><strong>Boolean</strong></td>\n</tr>\n<tr>\n<td>bot_status</td>\n<td>Shows whether bots or non-human traffic recently used this IP address to engage in automated fraud. This provides strong evidence that the IP address is suspicious.</td>\n<td><strong>Boolean</strong></td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"errors\">Errors</h3>\n<p>If there are any errors then it'll be in the format of :</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"message\": \"descriptive error message\",\n    \"code\": \"error_code\"\n}\n\n</code></pre>\n<h3 id=\"possible-error-messages\">Possible Error Messages</h3>\n<p>the possible error codes one can get on calling this APIs are:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Code</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>400, 404, 401, 415, 405</td>\n</tr>\n</tbody>\n</table>\n</div><p>for example:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Code</strong></th>\n<th><strong>Error Messages</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>401</td>\n<td>Incorrect secret_key</td>\n</tr>\n<tr>\n<td>401</td>\n<td>You are not Allowed to call this API service</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["trustScore"],"host":["https://app.paybomb.tech/api/v1"],"query":[],"variable":[]}},"response":[{"id":"164e2fe9-526f-4d4a-9e3e-1404463f5f14","name":"TrustScoreExists","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"requiredinput\": {\r\n        \"ip\": \"2001:8004:cc2:fadb:9958:4523:6c42:e3f2\",\r\n        \"email\": \"test@gmail.com\",\r\n        \"url\": \"http://test.com\"\r\n    },\r\n    \"optionalInput\": {\r\n        \"last_bets\": null,\r\n        \"last_wins\": \"\",\r\n        \"total_bonuses\": \"\",\r\n        \"last_real_bets\": \"\",\r\n        \"last_real_wins\": \"\",\r\n        \"total_deposits\": \"\",\r\n        \"last_bonus_bets\": \"\",\r\n        \"last_bonus_wins\": \"\",\r\n        \"average_real_bet\": \"\",\r\n        \"last_bets_amount\": \"\",\r\n        \"last_wins_amount\": \"\",\r\n        \"average_bonus_bet\": \"\",\r\n        \"bonus_to_deposits\": \"\",\r\n        \"last_deposit_date\": \"\",\r\n        \"total_withdrawals\": \"\",\r\n        \"is_phone_confirmed\": \"\",\r\n        \"money_in_money_out\": \"\",\r\n        \"last_deposit_amount\": \"\",\r\n        \"last_freespins_date\": \"\",\r\n        \"last_freespins_name\": \"\",\r\n        \"last_free_bonus_date\": \"\",\r\n        \"last_free_bonus_name\": \"\",\r\n        \"total_bonuses_amount\": \"\",\r\n        \"last_freespins_amount\": \"\",\r\n        \"last_freespins_status\": \"\",\r\n        \"last_real_bets_amount\": \"\",\r\n        \"last_real_wins_amount\": \"\",\r\n        \"total_deposits_amount\": \"\",\r\n        \"last_bonus_bets_amount\": \"\",\r\n        \"last_bonus_wins_amount\": \"\",\r\n        \"last_free_bonus_amount\": \"\",\r\n        \"last_free_bonus_status\": \"\",\r\n        \"last_deposit_bonus_date\": \"\",\r\n        \"last_deposit_bonus_name\": \"\",\r\n        \"last_freespins_currency\": \"\",\r\n        \"last_freespins_wagering\": \"\",\r\n        \"withdrawals_to_deposits\": \"\",\r\n        \"last_free_bonus_currency\": \"\",\r\n        \"last_free_bonus_wagering\": \"\",\r\n        \"total_withdrawals_amount\": \"\",\r\n        \"withdrawal_ewallet_email\": \"\",\r\n        \"last_deposit_bonus_amount\": \"\",\r\n        \"last_deposit_bonus_status\": \"\",\r\n        \"last_deposit_bonus_currency\": \"\",\r\n        \"last_deposit_bonus_wagering\": \"\",\r\n        \"session\": \"\",\r\n        \"payment_mode\": \"\",\r\n        \"card_fullname\": \"\",\r\n        \"card_bin\": \"\",\r\n        \"card_hash\": \"\",\r\n        \"card_last\": \"\",\r\n        \"card_expire\": \"\",\r\n        \"avs_result\": \"\",\r\n        \"cvv_result\": \"\",\r\n        \"sca_method\": \"\",\r\n        \"user_bank_account\": \"\",\r\n        \"user_bank_name\": \"\",\r\n        \"user_balance\": \"\",\r\n        \"user_verification_level\": \"\",\r\n        \"status_3d\": \"\",\r\n        \"regulation\": \"\",\r\n        \"payment_provider\": \"\",\r\n        \"phone_number\": \"\",\r\n        \"transaction_type\": \"\",\r\n        \"transaction_amount\": \"\",\r\n        \"transaction_currency\": \"\",\r\n        \"merchant_id\": \"\",\r\n        \"details_url\": \"\",\r\n        \"name\": \"\",\r\n        \"person_type\": \"\",\r\n        \"gender\": \"\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{StagingBaseURL}}/trustScore"},"status":"Accepted","code":202,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Sun, 29 Oct 2023 09:21:22 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"X-Frame-Options","value":"DENY"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=r2%2FuLwSilxdD1lpiI1VqpgF0Tu9etiNhupySeBHl0zcU8XV1z8kwR%2FJ00ti4xpMdrTXW%2BkqZkLGrkkaUnMWFsaYlg%2FfA9UC4wIKwmc9LHUwna491EmnC3b3vlabzhUJ11CMpnVmicUE%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"81da590e8d4345a0-LHR"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"trustScore\": 0,\n    \"deliverable\": \"false\",\n    \"proxy\": \"false\",\n    \"vpn\": \"false\",\n    \"tor\": \"false\",\n    \"active_vpn\": \"false\",\n    \"active_tor\": \"false\",\n    \"recent_abuse\": \"false\",\n    \"bot_status\": \"false\"\n}"},{"id":"572cf128-a0fd-4d32-8f49-2c99058a7e8e","name":"TrustScoreError","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"requiredinput\": {\r\n        \"ip\": \"2001:8004:cc2:fadb:9958:4523:6c42:e3f2\",\r\n        \"email\": \"test@gmail.com\",\r\n        \"url\": \"http://test.com\"\r\n    },\r\n    \"optionalInput\": {\r\n        \"last_bets\": null,\r\n        \"last_wins\": \"\",\r\n        \"total_bonuses\": \"\",\r\n        \"last_real_bets\": \"\",\r\n        \"last_real_wins\": \"\",\r\n        \"total_deposits\": \"\",\r\n        \"last_bonus_bets\": \"\",\r\n        \"last_bonus_wins\": \"\",\r\n        \"average_real_bet\": \"\",\r\n        \"last_bets_amount\": \"\",\r\n        \"last_wins_amount\": \"\",\r\n        \"average_bonus_bet\": \"\",\r\n        \"bonus_to_deposits\": \"\",\r\n        \"last_deposit_date\": \"\",\r\n        \"total_withdrawals\": \"\",\r\n        \"is_phone_confirmed\": \"\",\r\n        \"money_in_money_out\": \"\",\r\n        \"last_deposit_amount\": \"\",\r\n        \"last_freespins_date\": \"\",\r\n        \"last_freespins_name\": \"\",\r\n        \"last_free_bonus_date\": \"\",\r\n        \"last_free_bonus_name\": \"\",\r\n        \"total_bonuses_amount\": \"\",\r\n        \"last_freespins_amount\": \"\",\r\n        \"last_freespins_status\": \"\",\r\n        \"last_real_bets_amount\": \"\",\r\n        \"last_real_wins_amount\": \"\",\r\n        \"total_deposits_amount\": \"\",\r\n        \"last_bonus_bets_amount\": \"\",\r\n        \"last_bonus_wins_amount\": \"\",\r\n        \"last_free_bonus_amount\": \"\",\r\n        \"last_free_bonus_status\": \"\",\r\n        \"last_deposit_bonus_date\": \"\",\r\n        \"last_deposit_bonus_name\": \"\",\r\n        \"last_freespins_currency\": \"\",\r\n        \"last_freespins_wagering\": \"\",\r\n        \"withdrawals_to_deposits\": \"\",\r\n        \"last_free_bonus_currency\": \"\",\r\n        \"last_free_bonus_wagering\": \"\",\r\n        \"total_withdrawals_amount\": \"\",\r\n        \"withdrawal_ewallet_email\": \"\",\r\n        \"last_deposit_bonus_amount\": \"\",\r\n        \"last_deposit_bonus_status\": \"\",\r\n        \"last_deposit_bonus_currency\": \"\",\r\n        \"last_deposit_bonus_wagering\": \"\",\r\n        \"session\": \"\",\r\n        \"payment_mode\": \"\",\r\n        \"card_fullname\": \"\",\r\n        \"card_bin\": \"\",\r\n        \"card_hash\": \"\",\r\n        \"card_last\": \"\",\r\n        \"card_expire\": \"\",\r\n        \"avs_result\": \"\",\r\n        \"cvv_result\": \"\",\r\n        \"sca_method\": \"\",\r\n        \"user_bank_account\": \"\",\r\n        \"user_bank_name\": \"\",\r\n        \"user_balance\": \"\",\r\n        \"user_verification_level\": \"\",\r\n        \"status_3d\": \"\",\r\n        \"regulation\": \"\",\r\n        \"payment_provider\": \"\",\r\n        \"phone_number\": \"\",\r\n        \"transaction_type\": \"\",\r\n        \"transaction_amount\": \"\",\r\n        \"transaction_currency\": \"\",\r\n        \"merchant_id\": \"\",\r\n        \"details_url\": \"\",\r\n        \"name\": \"\",\r\n        \"person_type\": \"\",\r\n        \"gender\": \"\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{StagingBaseURL}}/trustScore"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Sun, 29 Oct 2023 09:28:33 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"X-Frame-Options","value":"DENY"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=herXY1o%2BFZa%2F3qNFjvh4ANgP%2FD0DdAVVFm0vUZDAst2rFkieItm%2Fu0VN24DYrdp7MHMHFKWLvrsBYVIxjDPDaLgJjeGBvlTP2iZoB5EnG1hPPHUVXRNP%2FGMmOTh%2Fp7gsyj0vihW1kMk%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"81da6398ab144913-LHR"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Incorrect secret_key\",\n    \"code\": \"authentication_failed\"\n}"}],"_postman_id":"31d40cc1-df1f-4ea5-99d0-478ea82a4ade"},{"name":"checkTransactionAllowed","id":"bfc94c6f-0b33-4110-b70c-20fd1565bacf","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"requiredinput\": {\r\n        \"ip\": \"111.11.11.11\",\r\n        \"email\": \"test@gmail.com\",\r\n        \"url\": \"https://www.asos.com/\"\r\n    },\r\n    \"optionalInput\": {\r\n        \"last_bets\": null,\r\n        \"last_wins\": \"\",\r\n        \"total_bonuses\": \"\",\r\n        \"last_real_bets\": \"\",\r\n        \"last_real_wins\": \"\",\r\n        \"total_deposits\": \"\",\r\n        \"last_bonus_bets\": \"\",\r\n        \"last_bonus_wins\": \"\",\r\n        \"average_real_bet\": \"\",\r\n        \"last_bets_amount\": \"\",\r\n        \"last_wins_amount\": \"\",\r\n        \"average_bonus_bet\": \"\",\r\n        \"bonus_to_deposits\": \"\",\r\n        \"last_deposit_date\": \"\",\r\n        \"total_withdrawals\": \"\",\r\n        \"is_phone_confirmed\": \"\",\r\n        \"money_in_money_out\": \"\",\r\n        \"last_deposit_amount\": \"\",\r\n        \"last_freespins_date\": \"\",\r\n        \"last_freespins_name\": \"\",\r\n        \"last_free_bonus_date\": \"\",\r\n        \"last_free_bonus_name\": \"\",\r\n        \"total_bonuses_amount\": \"\",\r\n        \"last_freespins_amount\": \"\",\r\n        \"last_freespins_status\": \"\",\r\n        \"last_real_bets_amount\": \"\",\r\n        \"last_real_wins_amount\": \"\",\r\n        \"total_deposits_amount\": \"\",\r\n        \"last_bonus_bets_amount\": \"\",\r\n        \"last_bonus_wins_amount\": \"\",\r\n        \"last_free_bonus_amount\": \"\",\r\n        \"last_free_bonus_status\": \"\",\r\n        \"last_deposit_bonus_date\": \"\",\r\n        \"last_deposit_bonus_name\": \"\",\r\n        \"last_freespins_currency\": \"\",\r\n        \"last_freespins_wagering\": \"\",\r\n        \"withdrawals_to_deposits\": \"\",\r\n        \"last_free_bonus_currency\": \"\",\r\n        \"last_free_bonus_wagering\": \"\",\r\n        \"total_withdrawals_amount\": \"\",\r\n        \"withdrawal_ewallet_email\": \"\",\r\n        \"last_deposit_bonus_amount\": \"\",\r\n        \"last_deposit_bonus_status\": \"\",\r\n        \"last_deposit_bonus_currency\": \"\",\r\n        \"last_deposit_bonus_wagering\": \"\",\r\n        \"session\": \"\",\r\n        \"payment_mode\": \"\",\r\n        \"card_fullname\": \"\",\r\n        \"card_bin\": \"\",\r\n        \"card_hash\": \"\",\r\n        \"card_last\": \"\",\r\n        \"card_expire\": \"\",\r\n        \"avs_result\": \"\",\r\n        \"cvv_result\": \"\",\r\n        \"sca_method\": \"\",\r\n        \"user_bank_account\": \"\",\r\n        \"user_bank_name\": \"\",\r\n        \"user_balance\": \"\",\r\n        \"user_verification_level\": \"\",\r\n        \"status_3d\": \"\",\r\n        \"regulation\": \"\",\r\n        \"payment_provider\": \"\",\r\n        \"phone_number\": \"\",\r\n        \"transaction_type\": \"\",\r\n        \"transaction_amount\": \"\",\r\n        \"transaction_currency\": \"\",\r\n        \"merchant_id\": \"\",\r\n        \"details_url\": \"\",\r\n        \"name\": \"\",\r\n        \"person_type\": \"\",\r\n        \"gender\": \"\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/checkTransAllowed","description":"<h3 id=\"general-trustscore\">General TrustScore</h3>\n<p>Request for the checkTransactionAllowed endpoint is identical to the TrustScore API. Only thing different is the response. Instead of detailed score, this endpoint only returns <code>transactionAllowed</code> parameter that can have either <code>YES</code> or <code>NO</code> value.</p>\n<h3 id=\"permission\"><strong>Permission</strong></h3>\n<p>Access to this API has to be given to you by the admin. So please contact your sales representative at Paybomb to get access to this API, if you get a 401 error of \"You are not allowed to call this API service\".</p>\n<h3 id=\"mandatory-parameters-in-body\">Mandatory Parameters (in body)</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameters</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>ip</td>\n<td>IP of the user. Both IP4 and IP6 are valid</td>\n</tr>\n<tr>\n<td>email</td>\n<td>The email id of the user you want to trust score on</td>\n</tr>\n<tr>\n<td>url</td>\n<td>The URL on which the user is trying to purchase or consume a product, service or data.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"other-optional-paramters\">Other optional paramters:</h3>\n<p>The optional parameters are self-explanatory and appropriate values can be given in string format.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameters</strong></th>\n<th><strong>Values</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>last_bets</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_wins</td>\n<td>String</td>\n</tr>\n<tr>\n<td>total_bonuses</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_real_bets</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_real_wins</td>\n<td>String</td>\n</tr>\n<tr>\n<td>total_deposits</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_bonus_bets</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_bonus_wins</td>\n<td>String</td>\n</tr>\n<tr>\n<td>average_real_bet</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_bets_amount</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_wins_amount</td>\n<td>String</td>\n</tr>\n<tr>\n<td>average_bonus_bet</td>\n<td>String</td>\n</tr>\n<tr>\n<td>bonus_to_deposits</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_deposit_date</td>\n<td>String</td>\n</tr>\n<tr>\n<td>total_withdrawals</td>\n<td>String</td>\n</tr>\n<tr>\n<td>is_phone_confirmed</td>\n<td>String</td>\n</tr>\n<tr>\n<td>money_in_money_out</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_deposit_amount</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_freespins_date</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_freespins_name</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_free_bonus_date</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_free_bonus_name</td>\n<td>String</td>\n</tr>\n<tr>\n<td>total_bonuses_amount</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_freespins_amount</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_freespins_status</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_real_bets_amount</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_real_wins_amount</td>\n<td>String</td>\n</tr>\n<tr>\n<td>total_deposits_amount</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_bonus_bets_amount</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_bonus_wins_amount</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_free_bonus_amount</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_free_bonus_status</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_deposit_bonus_date</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_deposit_bonus_name</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_freespins_currency</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_freespins_wagering</td>\n<td>String</td>\n</tr>\n<tr>\n<td>withdrawals_to_deposits</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_free_bonus_currency</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_free_bonus_wagering</td>\n<td>String</td>\n</tr>\n<tr>\n<td>total_withdrawals_amount</td>\n<td>String</td>\n</tr>\n<tr>\n<td>withdrawal_ewallet_email</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_deposit_bonus_amount</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_deposit_bonus_status</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_deposit_bonus_currency</td>\n<td>String</td>\n</tr>\n<tr>\n<td>last_deposit_bonus_wagering</td>\n<td>String</td>\n</tr>\n<tr>\n<td>session</td>\n<td>String</td>\n</tr>\n<tr>\n<td>payment_mode</td>\n<td>String</td>\n</tr>\n<tr>\n<td>card_fullname</td>\n<td>String</td>\n</tr>\n<tr>\n<td>card_bin</td>\n<td>String</td>\n</tr>\n<tr>\n<td>card_hash</td>\n<td>String</td>\n</tr>\n<tr>\n<td>card_last</td>\n<td>String</td>\n</tr>\n<tr>\n<td>card_expire</td>\n<td>String</td>\n</tr>\n<tr>\n<td>avs_result</td>\n<td>String</td>\n</tr>\n<tr>\n<td>cvv_result</td>\n<td>String</td>\n</tr>\n<tr>\n<td>sca_method</td>\n<td>String</td>\n</tr>\n<tr>\n<td>user_bank_account</td>\n<td>String</td>\n</tr>\n<tr>\n<td>user_bank_name</td>\n<td>String</td>\n</tr>\n<tr>\n<td>user_balance</td>\n<td>String</td>\n</tr>\n<tr>\n<td>user_verification_level</td>\n<td>String</td>\n</tr>\n<tr>\n<td>status_3d</td>\n<td>String</td>\n</tr>\n<tr>\n<td>regulation</td>\n<td>String</td>\n</tr>\n<tr>\n<td>payment_provider</td>\n<td>String</td>\n</tr>\n<tr>\n<td>phone_number</td>\n<td>String</td>\n</tr>\n<tr>\n<td>transaction_type</td>\n<td>String</td>\n</tr>\n<tr>\n<td>transaction_amount</td>\n<td>String</td>\n</tr>\n<tr>\n<td>transaction_currency</td>\n<td>String</td>\n</tr>\n<tr>\n<td>merchant_id</td>\n<td>String</td>\n</tr>\n<tr>\n<td>details_url</td>\n<td>String</td>\n</tr>\n<tr>\n<td>name</td>\n<td>String</td>\n</tr>\n<tr>\n<td>person_type</td>\n<td>String</td>\n</tr>\n<tr>\n<td>gender</td>\n<td>String</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"response\">Response</h3>\n<p>Response contains a single parameter: <code>transactionAllowed</code> which can either be <code>YES</code> or <code>NO</code> .</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n\"transactionAllowed\" : \"YES\"\n}\n\n</code></pre>\n<p>If there are any errors then it'll be in the format of :</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"message\": \"descriptive error message\",\n    \"code\": \"error_code\"\n}\n\n</code></pre>\n<h3 id=\"possible-error-messages\">Possible Error Messages</h3>\n<p>the possible error codes one can get on calling this APIs are:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Code</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>400, 404, 401, 415, 405</td>\n</tr>\n</tbody>\n</table>\n</div><p>for example:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Code</strong></th>\n<th><strong>Error Messages</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>401</td>\n<td>Incorrect secret_key</td>\n</tr>\n<tr>\n<td>401</td>\n<td>You are not Allowed to call this API service</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["checkTransAllowed"],"host":["https://app.paybomb.tech/api/v1"],"query":[],"variable":[]}},"response":[{"id":"33e9ac42-ca84-4735-9492-7e065a434728","name":"TrustScoreExists","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"requiredinput\": {\r\n        \"ip\": \"2001:8004:cc2:fadb:9958:4523:6c42:e3f2\",\r\n        \"email\": \"test@gmail.com\",\r\n        \"url\": \"http://test.com\"\r\n    },\r\n    \"optionalInput\": {\r\n        \"last_bets\": null,\r\n        \"last_wins\": \"\",\r\n        \"total_bonuses\": \"\",\r\n        \"last_real_bets\": \"\",\r\n        \"last_real_wins\": \"\",\r\n        \"total_deposits\": \"\",\r\n        \"last_bonus_bets\": \"\",\r\n        \"last_bonus_wins\": \"\",\r\n        \"average_real_bet\": \"\",\r\n        \"last_bets_amount\": \"\",\r\n        \"last_wins_amount\": \"\",\r\n        \"average_bonus_bet\": \"\",\r\n        \"bonus_to_deposits\": \"\",\r\n        \"last_deposit_date\": \"\",\r\n        \"total_withdrawals\": \"\",\r\n        \"is_phone_confirmed\": \"\",\r\n        \"money_in_money_out\": \"\",\r\n        \"last_deposit_amount\": \"\",\r\n        \"last_freespins_date\": \"\",\r\n        \"last_freespins_name\": \"\",\r\n        \"last_free_bonus_date\": \"\",\r\n        \"last_free_bonus_name\": \"\",\r\n        \"total_bonuses_amount\": \"\",\r\n        \"last_freespins_amount\": \"\",\r\n        \"last_freespins_status\": \"\",\r\n        \"last_real_bets_amount\": \"\",\r\n        \"last_real_wins_amount\": \"\",\r\n        \"total_deposits_amount\": \"\",\r\n        \"last_bonus_bets_amount\": \"\",\r\n        \"last_bonus_wins_amount\": \"\",\r\n        \"last_free_bonus_amount\": \"\",\r\n        \"last_free_bonus_status\": \"\",\r\n        \"last_deposit_bonus_date\": \"\",\r\n        \"last_deposit_bonus_name\": \"\",\r\n        \"last_freespins_currency\": \"\",\r\n        \"last_freespins_wagering\": \"\",\r\n        \"withdrawals_to_deposits\": \"\",\r\n        \"last_free_bonus_currency\": \"\",\r\n        \"last_free_bonus_wagering\": \"\",\r\n        \"total_withdrawals_amount\": \"\",\r\n        \"withdrawal_ewallet_email\": \"\",\r\n        \"last_deposit_bonus_amount\": \"\",\r\n        \"last_deposit_bonus_status\": \"\",\r\n        \"last_deposit_bonus_currency\": \"\",\r\n        \"last_deposit_bonus_wagering\": \"\",\r\n        \"session\": \"\",\r\n        \"payment_mode\": \"\",\r\n        \"card_fullname\": \"\",\r\n        \"card_bin\": \"\",\r\n        \"card_hash\": \"\",\r\n        \"card_last\": \"\",\r\n        \"card_expire\": \"\",\r\n        \"avs_result\": \"\",\r\n        \"cvv_result\": \"\",\r\n        \"sca_method\": \"\",\r\n        \"user_bank_account\": \"\",\r\n        \"user_bank_name\": \"\",\r\n        \"user_balance\": \"\",\r\n        \"user_verification_level\": \"\",\r\n        \"status_3d\": \"\",\r\n        \"regulation\": \"\",\r\n        \"payment_provider\": \"\",\r\n        \"phone_number\": \"\",\r\n        \"transaction_type\": \"\",\r\n        \"transaction_amount\": \"\",\r\n        \"transaction_currency\": \"\",\r\n        \"merchant_id\": \"\",\r\n        \"details_url\": \"\",\r\n        \"name\": \"\",\r\n        \"person_type\": \"\",\r\n        \"gender\": \"\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{StagingBaseURL}}/checkTransAllowed"},"status":"Accepted","code":202,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Sun, 29 Oct 2023 09:21:22 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"X-Frame-Options","value":"DENY"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=r2%2FuLwSilxdD1lpiI1VqpgF0Tu9etiNhupySeBHl0zcU8XV1z8kwR%2FJ00ti4xpMdrTXW%2BkqZkLGrkkaUnMWFsaYlg%2FfA9UC4wIKwmc9LHUwna491EmnC3b3vlabzhUJ11CMpnVmicUE%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"81da590e8d4345a0-LHR"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"transactionAllowed\": \"YES\"\n}"},{"id":"684201a5-fb5e-4ca3-b429-4860c44d1cec","name":"TrustScoreError","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"requiredinput\": {\r\n        \"ip\": \"2001:8004:cc2:fadb:9958:4523:6c42:e3f2\",\r\n        \"email\": \"test@gmail.com\",\r\n        \"url\": \"http://test.com\"\r\n    },\r\n    \"optionalInput\": {\r\n        \"last_bets\": null,\r\n        \"last_wins\": \"\",\r\n        \"total_bonuses\": \"\",\r\n        \"last_real_bets\": \"\",\r\n        \"last_real_wins\": \"\",\r\n        \"total_deposits\": \"\",\r\n        \"last_bonus_bets\": \"\",\r\n        \"last_bonus_wins\": \"\",\r\n        \"average_real_bet\": \"\",\r\n        \"last_bets_amount\": \"\",\r\n        \"last_wins_amount\": \"\",\r\n        \"average_bonus_bet\": \"\",\r\n        \"bonus_to_deposits\": \"\",\r\n        \"last_deposit_date\": \"\",\r\n        \"total_withdrawals\": \"\",\r\n        \"is_phone_confirmed\": \"\",\r\n        \"money_in_money_out\": \"\",\r\n        \"last_deposit_amount\": \"\",\r\n        \"last_freespins_date\": \"\",\r\n        \"last_freespins_name\": \"\",\r\n        \"last_free_bonus_date\": \"\",\r\n        \"last_free_bonus_name\": \"\",\r\n        \"total_bonuses_amount\": \"\",\r\n        \"last_freespins_amount\": \"\",\r\n        \"last_freespins_status\": \"\",\r\n        \"last_real_bets_amount\": \"\",\r\n        \"last_real_wins_amount\": \"\",\r\n        \"total_deposits_amount\": \"\",\r\n        \"last_bonus_bets_amount\": \"\",\r\n        \"last_bonus_wins_amount\": \"\",\r\n        \"last_free_bonus_amount\": \"\",\r\n        \"last_free_bonus_status\": \"\",\r\n        \"last_deposit_bonus_date\": \"\",\r\n        \"last_deposit_bonus_name\": \"\",\r\n        \"last_freespins_currency\": \"\",\r\n        \"last_freespins_wagering\": \"\",\r\n        \"withdrawals_to_deposits\": \"\",\r\n        \"last_free_bonus_currency\": \"\",\r\n        \"last_free_bonus_wagering\": \"\",\r\n        \"total_withdrawals_amount\": \"\",\r\n        \"withdrawal_ewallet_email\": \"\",\r\n        \"last_deposit_bonus_amount\": \"\",\r\n        \"last_deposit_bonus_status\": \"\",\r\n        \"last_deposit_bonus_currency\": \"\",\r\n        \"last_deposit_bonus_wagering\": \"\",\r\n        \"session\": \"\",\r\n        \"payment_mode\": \"\",\r\n        \"card_fullname\": \"\",\r\n        \"card_bin\": \"\",\r\n        \"card_hash\": \"\",\r\n        \"card_last\": \"\",\r\n        \"card_expire\": \"\",\r\n        \"avs_result\": \"\",\r\n        \"cvv_result\": \"\",\r\n        \"sca_method\": \"\",\r\n        \"user_bank_account\": \"\",\r\n        \"user_bank_name\": \"\",\r\n        \"user_balance\": \"\",\r\n        \"user_verification_level\": \"\",\r\n        \"status_3d\": \"\",\r\n        \"regulation\": \"\",\r\n        \"payment_provider\": \"\",\r\n        \"phone_number\": \"\",\r\n        \"transaction_type\": \"\",\r\n        \"transaction_amount\": \"\",\r\n        \"transaction_currency\": \"\",\r\n        \"merchant_id\": \"\",\r\n        \"details_url\": \"\",\r\n        \"name\": \"\",\r\n        \"person_type\": \"\",\r\n        \"gender\": \"\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{StagingBaseURL}}/checkTransAllowed"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Sun, 29 Oct 2023 09:28:33 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"X-Frame-Options","value":"DENY"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=herXY1o%2BFZa%2F3qNFjvh4ANgP%2FD0DdAVVFm0vUZDAst2rFkieItm%2Fu0VN24DYrdp7MHMHFKWLvrsBYVIxjDPDaLgJjeGBvlTP2iZoB5EnG1hPPHUVXRNP%2FGMmOTh%2Fp7gsyj0vihW1kMk%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"81da6398ab144913-LHR"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Incorrect secret_key\",\n    \"code\": \"authentication_failed\"\n}"}],"_postman_id":"bfc94c6f-0b33-4110-b70c-20fd1565bacf"}],"id":"80ab5ea0-979c-44a3-8986-20f3811ac91a","_postman_id":"80ab5ea0-979c-44a3-8986-20f3811ac91a","description":""},{"name":"Cashier APIs","item":[{"name":"Customer","id":"d66a1117-04e3-4ad2-9ec5-5f1283b44a22","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer Token","type":"text"},{"key":"BrandId","value":"brand_id_value","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"fullName\": \"Rahul Agarwal\",\r\n    \"emailId\": \"rahul+26@paybomb.tech\",\r\n    \"dateOfBirth\": \"1994-06-03\",\r\n    \"phoneNo\": \"+91 797639082\",\r\n    \"city\": \"Jaipur\",\r\n    \"stateCode\": \"RJ\",\r\n    \"zipCode\": \"302018\",\r\n    \"address\": \"House Number 53, Vaishali Nagar, Jaipur\",\r\n    \"country\": \"IN\",\r\n    \"merchantCustomerId\": \"rahultestcustomer@paybomb.tech\",\r\n    \"CustRegDate\": \"2023-12-27\", //non-mandatory - customer registration date on merchant site\r\n    \"SuccessTxn\": \"32\", //non-mandatory - total successful customer orders on merchant site\r\n    \"extraParam\": {\r\n        \"param1\": \"value1\",\r\n        \"param2\": \"value2\",\r\n        \"param3\": \"value3\",\r\n        \"param4\": \"value4\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://api.paybomb.net/api/v1/customer","description":"<p><strong>OVERIEW</strong></p>\n<p>The <strong>createCustomer API</strong> allows merchants to create a customer profile on Paybomb when a user visits their website, facilitating a seamless payment experience by pre-filling the customer's details, on the Paybomb Cashier. The API takes in customer information and returns a unique customerID that can be passed in purchase payload, eliminating the need for customers to manually enter their details during transactions.</p>\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><strong>Required</strong></th>\n<th>Description</th>\n<th>Example</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>merchantCustomerId</td>\n<td>String</td>\n<td>Yes</td>\n<td>unique customer ID provided by merchant. This can be email, mobile or an alphanumeric string</td>\n<td><a href=\"https://mailto:rahultestcustomer@paybomb.tech\">rahultestcustomer@paybomb.tech</a></td>\n</tr>\n<tr>\n<td>fullName</td>\n<td>String</td>\n<td>Yes</td>\n<td>Full name of the customer.</td>\n<td>Rahul Agarwal</td>\n</tr>\n<tr>\n<td>emailId</td>\n<td>String</td>\n<td>Yes</td>\n<td>Email address of the customer.</td>\n<td><a href=\"https://mailto:test@paybomb.tech\">test@paybomb.tech</a></td>\n</tr>\n<tr>\n<td>dateOfBirth</td>\n<td>String</td>\n<td>Optional</td>\n<td>Customer's date of birth in YYYY-MM-DD format.</td>\n<td>1995-12-27</td>\n</tr>\n<tr>\n<td>phoneNo</td>\n<td>String</td>\n<td>Yes</td>\n<td>Customer's phone number. Preferred with the country code</td>\n<td>+91 797639082</td>\n</tr>\n<tr>\n<td>city</td>\n<td>String</td>\n<td>Optional</td>\n<td>City of the customer.</td>\n<td>Jaipur</td>\n</tr>\n<tr>\n<td>stateCode</td>\n<td>String</td>\n<td>Yes</td>\n<td>State code of the customer.</td>\n<td>RJ</td>\n</tr>\n<tr>\n<td>zipCode</td>\n<td>String</td>\n<td>Optional</td>\n<td>Postal code of the customer's location.</td>\n<td>302018</td>\n</tr>\n<tr>\n<td>address</td>\n<td>String</td>\n<td>Optional</td>\n<td>Full address of the customer.</td>\n<td>House Number 53, Vaishali Nagar, Jaipur</td>\n</tr>\n<tr>\n<td>country</td>\n<td>String</td>\n<td>Yes</td>\n<td>Country code (ISO 3166-1 alpha-2).</td>\n<td>IN</td>\n</tr>\n<tr>\n<td>custRegDate</td>\n<td>Sting</td>\n<td>Optional</td>\n<td>Customer registration date on merchant site in YYYY-MM-DD format.</td>\n<td>2023-12-27</td>\n</tr>\n<tr>\n<td>successTxn</td>\n<td>String</td>\n<td>Optional</td>\n<td>Number of successful transactions customer has carried on merchant site.</td>\n<td>32</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"user-flow\"><strong>User Flow</strong></h3>\n<ol>\n<li><p><strong>Customer visits merchant's website</strong>: The customer selects the product or service and proceeds to checkout page.</p>\n</li>\n<li><p><strong>Merchant calls the</strong> <strong><code>createCustomer</code></strong> <strong>API</strong>: The merchant sends a <code>POST</code> request to the Paybomb API with the customer's details.</p>\n</li>\n<li><p><strong>Customer ID generation</strong>: Paybomb processes the request and generates a unique <code>customerId</code> which is returned in the response.</p>\n</li>\n<li><p><strong>Payment Process</strong>: The merchant uses the <code>customerId</code> for subsequent session creation, ensuring the customer doesn’t need to re-enter their details for future payments.</p>\n</li>\n</ol>\n<hr />\n<h3 id=\"benefits\"><strong>Benefits</strong></h3>\n<ul>\n<li><p><strong>Seamless user experience</strong>: The customer does not have to enter their details manually for every purchase.</p>\n</li>\n<li><p><strong>Faster Checkout</strong>: The merchant can use the <code>customerId</code> for faster payment processing.</p>\n</li>\n<li><p><strong>Data Security</strong>: Customer details are stored securely and can be reused across transactions, reducing the chances of errors.</p>\n</li>\n</ul>\n<h3 id=\"implementing-createcustomer-on-merchant-site\">Implementing createCustomer on merchant site:</h3>\n<p>The <code>createCustomer</code> can be implemented on merchant site in one of two ways, depending on merchant’s integration flow:</p>\n<p><strong>At Checkout:</strong></p>\n<p>When a customer initiates the checkout process, your system should invoke the <code>createCustomer</code> API, before actually starting the session.</p>\n<ul>\n<li><p><strong>Call</strong> <strong><code>createCustomer</code></strong>: This API call generates a unique customer ID.</p>\n</li>\n<li><p><strong>Use of Customer ID:</strong> Pass the returned customer ID in Session API, when creating a payment session.</p>\n</li>\n</ul>\n<p><strong>Upon Customer Login:</strong></p>\n<p>Alternatively, merchants may choose to call <code>createCustomer</code> at the time of customer login on their site.</p>\n<ul>\n<li><p><strong>Persistent Customer Profiles:</strong> This approach can help build or maintain a persistent customer profile, ensuring the customer ID is available for any subsequent payment sessions without needing to call <code>createCustomer</code> again.</p>\n</li>\n<li><p><strong>Integration Flexibility:</strong> This is useful for merchants who want to initialize customer data early in the customer journey rather than during checkout.</p>\n</li>\n</ul>\n<p>The method you choose depends on your business requirements and how your system is architected. Regardless of when you call it, the resulting customer ID must be passed to the <code>createSession</code> API to initiate a payment session.</p>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"d2576231-7177-44fd-a34a-5bc0c13671b1","id":"d2576231-7177-44fd-a34a-5bc0c13671b1","name":"Cashier APIs","type":"folder"}},"urlObject":{"protocol":"https","path":["api","v1","customer"],"host":["api","paybomb","net"],"query":[],"variable":[]}},"response":[{"id":"e590c3fd-82db-49ba-9343-eacdc6e96f49","name":"Success","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Accept","value":"*/*","type":"text"},{"key":"BrandId","value":"brand_id_value","description":"If this parameter is passed in the header, a unique customer will be created under that particular Brand Name. else, the customer will be created under the main merchant (irrespective of the brands)","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"fullName\": \"Rahul Agarwal\",\r\n    \"emailId\": \"rahul+26@paybomb.tech\",\r\n    \"dateOfBirth\": \"1994-06-03\",\r\n    \"phoneNo\": \"+91 797639082\",\r\n    \"city\": \"Jaipur\",\r\n    \"stateCode\": \"RJ\",\r\n    \"zipCode\": \"302018\",\r\n    \"address\": \"House Number 53, Vaishali Nagar, Jaipur\",\r\n    \"country\": \"IN\",\r\n    \"merchantCustomerId\": \"rahultestcustomer@paybomb.tech\",\r\n    \"CustRegDate\": \"2023-12-27\", //non-mandatory - customer registration date on merchant site\r\n    \"SuccessTxn\": \"32\", //non-mandatory - total successful customer orders on merchant site\r\n    \"extraParam\": {\r\n        \"param1\": \"value1\",\r\n        \"param2\": \"value2\",\r\n        \"param3\": \"value3\",\r\n        \"param4\": \"value4\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://api.paybomb.net/api/v1/customer"},"status":"OK","code":200,"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\r\n    \"customerId\": \"691afbc6fd96d34a8113a34d\",\r\n    \"merchantCustomerId\": \"rahultestcustomer@paybomb.tech\",\r\n    \"fullName\": \"Rahul Agarwal\",\r\n    \"emailId\": \"rahul+26@paybomb.tech\",\r\n    \"dateOfBirth\": \"1994-06-03\",\r\n    \"phoneNo\": \"+91 797639082\",\r\n    \"brandID\": \"1d666074-39be-4b90-aec9-e9de78fbdcb9\",\r\n    \"city\": \"Jaipur\",\r\n    \"zipCode\": \"302018\",\r\n    \"address\": \"House Number 53, Vaishali Nagar, Jaipur\",\r\n    \"country\": \"IN\",\r\n    \"stateCode\": \"RJ\",\r\n    \"custRegDate\": \"2023-12-27\",\r\n    \"successTrans\": 0,\r\n    \"createdOn\": 1763376070,\r\n    \"lastUpdated\": 0,\r\n    \"lastActivity\": 1763376070,\r\n    \"extraParam\": {\r\n        \"param1\": \"value1\",\r\n        \"param2\": \"value2\",\r\n        \"param3\": \"value3\",\r\n        \"param4\": \"value4\"\r\n    }\r\n}"},{"id":"1123cfce-bca6-4d2f-ba47-c6a6d330429c","name":"Failure","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Accept","value":"*/*","type":"text"},{"key":"BrandId","value":"brand_id_value","description":"If this parameter is passed in the header, a unique customer will be created under that particular Brand Name. else, the customer will be created under the main merchant (irrespective of the brands)","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"fullName\": \"Rahul Agarwal\",\r\n    \"emailId\": \"rahul+26@paybomb.tech\",\r\n    \"dateOfBirth\": \"1994-06-03\",\r\n    \"phoneNo\": \"+91 797639082\",\r\n    \"city\": \"Jaipur\",\r\n    \"stateCode\": \"RJ\",\r\n    \"zipCode\": \"302018\",\r\n    \"address\": \"House Number 53, Vaishali Nagar, Jaipur\",\r\n    \"country\": \"IN\",\r\n    \"merchantCustomerId\": \"rahultestcustomer@paybomb.tech\",\r\n    \"CustRegDate\": \"2023-12-27\", //non-mandatory - customer registration date on merchant site\r\n    \"SuccessTxn\": \"32\", //non-mandatory - total successful customer orders on merchant site\r\n    \"extraParam\": {\r\n        \"param1\": \"value1\",\r\n        \"param2\": \"value2\",\r\n        \"param3\": \"value3\",\r\n        \"param4\": \"value4\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://api.paybomb.net/api/v1/customer"},"status":"Bad Request","code":400,"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\r\n    \"message\": \"Invalid Email Format\",\r\n    \"code\": \"invalid_email\"\r\n}"},{"id":"d4a1d0f1-0499-42fd-afaa-16d8955fcee9","name":"Existing Customer","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Accept","value":"*/*","type":"text"},{"key":"BrandId","value":"brand_id_value","description":"If this parameter is passed in the header, a unique customer will be created under that particular Brand Name. else, the customer will be created under the main merchant (irrespective of the brands)","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"fullName\": \"Rahul Agarwal\",\r\n    \"emailId\": \"rahul+26@paybomb.tech\",\r\n    \"dateOfBirth\": \"1994-06-03\",\r\n    \"phoneNo\": \"+91 797639082\",\r\n    \"city\": \"Jaipur\",\r\n    \"stateCode\": \"RJ\",\r\n    \"zipCode\": \"302018\",\r\n    \"address\": \"House Number 53, Vaishali Nagar, Jaipur\",\r\n    \"country\": \"IN\",\r\n    \"merchantCustomerId\": \"rahultestcustomer@paybomb.tech\",\r\n    \"CustRegDate\": \"2023-12-27\", //non-mandatory - customer registration date on merchant site\r\n    \"SuccessTxn\": \"32\", //non-mandatory - total successful customer orders on merchant site\r\n    \"extraParam\": {\r\n        \"param1\": \"value1\",\r\n        \"param2\": \"value2\",\r\n        \"param3\": \"value3\",\r\n        \"param4\": \"value4\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://api.paybomb.net/api/v1/customer"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\r\n    \"message\": \"Customer already exists with this information\",\r\n    \"code\": \"customer_already_exists\"\r\n}"}],"_postman_id":"d66a1117-04e3-4ad2-9ec5-5f1283b44a22"},{"name":"Customer","id":"49d7b7b7-6b7a-4348-b21b-59f82b831cc7","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Authorization","value":"Bearer Token","type":"text"},{"key":"BrandId","value":"brand_id_value","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Accept","value":"*/*","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"merchantCustomerId\": \"rahultestcustomer1@paybomb.tech\"\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.net/api/v1/customer","description":"<p>This endpoint makes an HTTP GET request to retrieve customer information from the Paybomb API.</p>\n<h3 id=\"request\">Request</h3>\n<p>The request does not include any query parameters, but it uses a raw request body with the following parameter \"merchantCustomerId\", which will be the customer id on the merchant's side.</p>\n<h3 id=\"response\">Response</h3>\n<p>The response of this request can be documented as a JSON schema.</p>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"d2576231-7177-44fd-a34a-5bc0c13671b1","id":"d2576231-7177-44fd-a34a-5bc0c13671b1","name":"Cashier APIs","type":"folder"}},"urlObject":{"protocol":"https","path":["api","v1","customer"],"host":["app","paybomb","net"],"query":[],"variable":[]}},"response":[{"id":"68ce3dbf-3af2-4f48-9b2f-e30d6f2ca162","name":"Success","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Accept","value":"*/*","type":"text"},{"key":"BrandId","value":"brand_id_value","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"url":"https://app.paybomb.net/api/v1/customer"},"status":"OK","code":200,"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\n    \"customerId\": \"691afbc6fd96d34a8113a34d\",\n    \"merchantCustomerId\": \"rahultestcustomer1@paybomb.tech\",\n    \"fullName\": \"Rahul Agarwal\",\n    \"emailId\": \"rahul+26@paybomb.tech\",\n    \"dateOfBirth\": \"1994-06-03\",\n    \"phoneNo\": \"+91 797639082\",\n    \"brandID\": \"1d666074-39be-4b90-aec9-e9de78fbdcb9\",\n    \"city\": \"Jaipur\",\n    \"zipCode\": \"302018\",\n    \"address\": \"House Number 53, Vaishali Nagar, Jaipur\",\n    \"country\": \"IN\",\n    \"stateCode\": \"RJ\",\n    \"custRegDate\": \"2023-12-27\",\n    \"successTrans\": 0,\n    \"createdOn\": 1763376070,\n    \"lastUpdated\": 0,\n    \"lastActivity\": 1763376070,\n    \"extraParam\": {\n        \"param1\": \"value1\",\n        \"param2\": \"value2\",\n        \"param3\": \"value3\",\n        \"param4\": \"value4\"\n    }\n}"},{"id":"b4d0e0b8-9dcf-4308-936b-23b791659019","name":"Invalid Customer","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Accept","value":"*/*","type":"text"},{"key":"BrandId","value":"brand_id_value","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"url":"https://app.paybomb.net/api/v1/customer"},"status":"Bad Request","code":400,"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Customer with this information does not exist\",\n    \"code\": \"customer_does_not_exist\"\n}"}],"_postman_id":"49d7b7b7-6b7a-4348-b21b-59f82b831cc7"},{"name":"Customer","event":[{"listen":"test","script":{"exec":["var template = `","<style type=\"text/css\">","    .tftable {font-size:14px;color:#333333;width:100%;border-width: 1px;border-color: #87ceeb;border-collapse: collapse;}","    .tftable th {font-size:18px;background-color:#87ceeb;border-width: 1px;padding: 8px;border-style: solid;border-color: #87ceeb;text-align:left;}","    .tftable tr {background-color:#ffffff;}","    .tftable td {font-size:14px;border-width: 1px;padding: 8px;border-style: solid;border-color: #87ceeb;}","    .tftable tr:hover {background-color:#e0ffff;}","</style>","","<table class=\"tftable\" border=\"1\">","    <tr>","        <th>Customer ID</th>","        <th>First Name</th>","        <th>Last Name</th>","        <th>Email</th>","        <th>Phone</th>","    </tr>","    ","    <tr>","        <td>{{response.customerId}}</td>","        <td>{{response.firstName}}</td>","        <td>{{response.lastName}}</td>","        <td>{{response.email}}</td>","        <td>{{response.phone}}</td>","    </tr>","</table>","`;","","function constructVisualizerPayload() {","    return {response: pm.response.json()}","}","","pm.visualizer.set(template, constructVisualizerPayload());"],"type":"text/javascript","packages":{},"requests":{},"id":"8fdb96a5-7280-4a15-be06-fc2459f4071f"}}],"id":"ccd1baa9-8efd-4463-bce0-47b9549f2afa","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"PATCH","header":[{"key":"Authorization","value":"Bearer Token","type":"text"},{"key":"BrandId","value":"brand_id_value","type":"text"},{"key":"Accept","value":"*/*","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"fullName\": \"Gouri Shankar3\",\n    \"emailId\": \"gouri@paybomb.techm\",\n    \"dateOfBirth\": \"1990-11-27\",\n    \"phoneNo\": \"+91 9413666514\",\n    \"city\": \"Dausa\",\n    \"stateCode\": \"Raj\",\n    \"zipCode\": \"202021\",\n    \"address\": \"Somnath Nagar\",\n    \"country\": \"IN\",\n    \"CustRegDate\": \"2023-12-28\",\n    \"SuccessTxn\": \"33\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.paybomb.net/api/v1/{PaybombCustomerId}/patchCustomer","description":"<p>Whenever a customer or the merchant updates customer details on the merchant site, a PATCH request must be made to synchronize these changes with Paybomb.</p>\n<p>This API endpoint allows you to update the customer details using an HTTP PATCH request. The request should be sent to <a href=\"https://app.paybomb.tech/api/v1/%7BcustomerId%7D/patchCustomer\">https://app.paybomb.tech/api/v1/{customerId}/patchCustomer</a>.</p>\n<h3 id=\"request-body\">Request Body</h3>\n<p>The request body should be in raw format and include the following parameters:</p>\n<ul>\n<li><p><code>fullName</code> (string): The full name of the customer.</p>\n</li>\n<li><p><code>emailId</code> (string): The email address of the customer.</p>\n</li>\n<li><p><code>dateOfBirth</code> (string): The date of birth of the customer.</p>\n</li>\n<li><p><code>phoneNo</code> (string): The phone number of the customer.</p>\n</li>\n<li><p><code>city</code> (string): The city of the customer.</p>\n</li>\n<li><p><code>stateCode</code> (string): The state code of the customer.</p>\n</li>\n<li><p><code>zipCode</code> (string): The zip code of the customer.</p>\n</li>\n<li><p><code>address</code> (string): The address of the customer.</p>\n</li>\n<li><p><code>country</code> (string): The country of the customer.</p>\n</li>\n<li><p><code>createdOn</code> (string): Time when the customer was created.</p>\n</li>\n<li><p><code>custRegDate</code> (string): Customer registration date (Non-Mandatory).</p>\n</li>\n<li><p><code>successTxn</code> (string): Success transaction details (Non-Mandatory).</p>\n</li>\n<li><p><code>lastActivity</code> (string): Time of the last activity.</p>\n</li>\n<li><p><code>lastUpdated</code> (string): Time when the last patch was called.</p>\n</li>\n<li><p><code>extraParam</code> (object): Additional parameters including <code>param1</code>, <code>param2</code>, <code>param3</code>, <code>param4</code> with their respective values.</p>\n</li>\n</ul>\n<h3 id=\"response\">Response</h3>\n<p>The response will contain the updated customer details or a success message upon successful update.</p>\n","urlObject":{"protocol":"https","path":["api","v1","{PaybombCustomerId}","patchCustomer"],"host":["api","paybomb","net"],"query":[],"variable":[]}},"response":[{"id":"e02e4246-c372-4b08-add7-70a988e485e1","name":"Success","originalRequest":{"method":"PATCH","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Accept","value":"*/*","type":"text"},{"key":"BrandId","value":"brand_id_value","type":"text"},{"key":"Authorisation","value":"Bearer Token","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"fullName\": \"Gouri Shankar3\",\n    \"emailId\": \"gouri@paybomb.techm\",\n    \"dateOfBirth\": \"1990-11-27\",\n    \"phoneNo\": \"+91 9413666514\",\n    \"city\": \"Dausa\",\n    \"stateCode\": \"Raj\",\n    \"zipCode\": \"202021\",\n    \"address\": \"Somnath Nagar\",\n    \"country\": \"IN\",\n    \"CustRegDate\": \"2023-12-28\",\n    \"SuccessTxn\": \"33\",\n    \"extraParam\": {\n        \"param1\": \"value1\",\n        \"param2\": \"value2\",\n        \"param3\": \"value3\",\n        \"param4\": \"value4\"\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.paybomb.net/api/v1/{PaybombCustomerId}/patchCustomer"},"status":"OK","code":200,"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\n    \"customerId\": \"691afbc6fd96d34a8113a34d\",\n    \"merchantCustomerId\": \"rahultestcustomer1@paybomb.tech\",\n    \"fullName\": \"Gouri Shankar3\",\n    \"emailId\": \"gouri@paybomb.techm\",\n    \"dateOfBirth\": \"1990-11-27\",\n    \"phoneNo\": \"+91 9413666514\",\n    \"brandID\": \"brandID\",\n    \"city\": \"Dausa\",\n    \"zipCode\": \"202021\",\n    \"address\": \"Somnath Nagar\",\n    \"country\": \"IN\",\n    \"stateCode\": \"Raj\",\n    \"custRegDate\": \"2023-12-28\",\n    \"successTrans\": 0,\n    \"createdOn\": 1763376070,\n    \"lastUpdated\": 1763377024,\n    \"lastActivity\": 1763377024,\n    \"extraParam\": {\n        \"param1\": \"value1\",\n        \"param2\": \"value2\",\n        \"param3\": \"value3\",\n        \"param4\": \"value4\"\n    }\n}"}],"_postman_id":"ccd1baa9-8efd-4463-bce0-47b9549f2afa"},{"name":"Purchase Session","id":"0515d8b7-c1c6-4489-81fc-951bbe3b9b89","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer Token","type":"text"},{"key":"BrandId","value":"brand_id_value","type":"text"},{"key":"Accept","value":"*/*","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"customerId\": \"68fed1855ebbe829416b08c6\",\r\n    \"merchantRef\": \"rahultestcustomer1@paybomb.tech\", // optional\r\n    \"currency\": \"EUR\",\r\n    \"products\": [\r\n        {\r\n            \"name\": \"Product1\",\r\n            \"price\": \"10\"\r\n        },\r\n        {\r\n            \"name\": \"Product2\",\r\n            \"price\": \"12\"\r\n        }\r\n    ],\r\n    \"totalAmount\": \"22\", // optional, but if present have precedence over sum of prices mentioned above.\r\n    \"paymentMethod\": \"VISA\", //optional\r\n    \"success_redirect\": \"https://merchant-success-page.com/\",\r\n    \"failure_redirect\": \"https://merchant-failure-page.com/\",\r\n    \"pending_redirect\": \"https://merchant-pending-page.com/\",\r\n    \"success_callback\": \"https://your.success.callback.com\",\r\n    \"failure_callback\": \"https://your.failure.callback.com\",\r\n    \"extraParam\": {\r\n        \"param1\": \"value1\",\r\n        \"showCryptoConversion\": \"yes\",\r\n        \"cryptoCurrencies\": \"[\\\"BTC\\\",\\\"ETH\\\",\\\"USDT\\\",\\\"XRP\\\",\\\"LTC\\\",\\\"DOGE\\\",\\\"ETC\\\",\\\"BNB\\\",\\\"USDC\\\",\\\"SOL\\\",\\\"ADA\\\",\\\"BCH\\\",\\\"DASH\\\",\\\"BTG\\\",\\\"ZEC\\\",\\\"DGB\\\",\\\"EOS\\\",\\\"XLM\\\",\\\"TRX\\\",\\\"QTUM\\\",\\\"POL\\\",\\\"SHIB\\\",\\\"LINK\\\",\\\"DAI\\\",\\\"TON\\\",\\\"AVAX\\\",\\\"FDUSD\\\",\\\"ARB\\\",\\\"OP\\\"]\",\r\n            \"param3\": \"value3\",\r\n            \"param4\": \"value4\"\r\n        }\r\n    }","options":{"raw":{"language":"json"}}},"url":"https://api.paybomb.net/api/v1/createSession","description":"<p><strong>OVERIEW</strong></p>\n<p>The <code>createSession</code> API is designed to initiate a payment session for a customer after their profile has been created via the <strong>createCustomer</strong> API. The session is automatically generated at the backend on the merchant’s checkout URL. This session allows the customer to continue with their transaction without having to manually interact with the session URL, and ensures the session remains active until the payment is completed or the session expires.</p>\n<p>This API improves the user experience by reducing transaction failures and enhancing the overall payment process, thus reducing transaction churn rates.</p>\n<h3 id=\"mandatory-parameters\">Mandatory 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>Example</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>customerId</td>\n<td>String</td>\n<td>The unique ID of the customer (generated from createCustomer).</td>\n<td>6731a609b6bb5a43ad66c4a6</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"show-crypto-conversion\">Show Crypto Conversion</h4>\n<p>Additionally, there are some default extra parameters that you can pass for allowing Crypto Conversion on Paybomb's cashier itself.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n<th><strong>Example</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>extraParam.showCryptoConversion</td>\n<td>String</td>\n<td>This optional parameter allows customer to see crypto value equivelant to the Fiat amount the customer is planning to pay.</td>\n<td>Yes</td>\n</tr>\n<tr>\n<td>extraParam.cryptoCurrencies</td>\n<td>String</td>\n<td>Pass here the allowed crypto tokens on the cashier, where customer can see the the conversion value</td>\n<td>[\\\"BTC\\\",\\\"ETH\\\",\\\"USDT\\\",\\\"XRP\\\",\\\"LTC\\\",\\\"DOGE\\\",\\\"ETC\\\",\\\"BNB\\\",\\\"USDC\\\",\\\"SOL\\\",\\\"ADA\\\",\\\"BCH\\\",\\\"DASH\\\",\\\"BTG\\\",\\\"ZEC\\\",\\\"DGB\\\",\\\"EOS\\\",\\\"XLM\\\",\\\"TRX\\\",\\\"QTUM\\\",\\\"POL\\\",\\\"SHIB\\\",\\\"LINK\\\",\\\"DAI\\\",\\\"TON\\\",\\\"AVAX\\\",\\\"FDUSD\\\",\\\"ARB\\\",\\\"OP\\\"]</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"usage-flow\"><strong>Usage Flow</strong></h3>\n<ol>\n<li><p><strong>Customer completes the</strong> <strong><code>createCustomer</code></strong> <strong>API</strong>: Once the customer is created via the <code>createCustomer</code> API, the merchant proceeds to call the <code>createSession</code> API to generate a session.</p>\n</li>\n<li><p><strong>Merchant sends</strong> <strong><code>createSession</code></strong> <strong>request</strong>: The merchant sends a <code>POST</code> request to the <code>createSession</code> API with the customer’s <code>customerId</code> and the merchant’s <code>brandId</code>.</p>\n</li>\n<li><p><strong>Session created automatically on the checkout URL</strong>: Paybomb creates the session and associates it with the merchant’s checkout page. This session remains active on the backend, allowing the customer to continue the payment process without interruption.</p>\n</li>\n<li><p><strong>Customer proceeds to checkout</strong>: The customer is redirected to the checkout page as part of the merchant's payment flow, where the session is automatically validated. The session remains active for a set period, allowing the customer to complete the payment without needing to manually interact with the session URL.</p>\n</li>\n<li><p><strong>Session Expiry</strong>: The session expires after the set expiration time (<code>expiryOn</code>), ensuring the payment process is completed within the defined window. Default is 15 mins from the creation time.</p>\n</li>\n</ol>\n<hr />\n<h3 id=\"benefits\"><strong>Benefits</strong></h3>\n<ul>\n<li><p><strong>Seamless Checkout</strong>: The session URL is automatically generated and active at the backend, ensuring a smoother and uninterrupted customer experience.</p>\n</li>\n<li><p><strong>Reduced Transaction Failures</strong>: By ensuring the session remains active during the payment process, the chances of transaction failures due to session timeouts are minimized.</p>\n</li>\n<li><p><strong>Improved User Experience</strong>: The customer does not need to click on a session URL or navigate away from the page, leading to faster and more secure payment processing.</p>\n</li>\n</ul>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"d2576231-7177-44fd-a34a-5bc0c13671b1","id":"d2576231-7177-44fd-a34a-5bc0c13671b1","name":"Cashier APIs","type":"folder"}},"urlObject":{"protocol":"https","path":["api","v1","createSession"],"host":["api","paybomb","net"],"query":[],"variable":[]}},"response":[{"id":"3b97a6f8-0747-4973-bb11-806b8ca6af5d","name":"Success","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Accept","value":"*/*","type":"text"},{"key":"BrandId","value":"brand_id_value","description":"it is mandatory to pass the BrandId in header for each createSession request. ","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"customerId\": \"68fed1855ebbe829416b08c6\",\r\n    \"merchantRef\": \"rahultestcustomer1@paybomb.tech\", // optional\r\n    \"currency\": \"EUR\",\r\n    \"products\": [\r\n        {\r\n            \"name\": \"Product1\",\r\n            \"price\": \"10\"\r\n        },\r\n        {\r\n            \"name\": \"Product2\",\r\n            \"price\": \"12\"\r\n        }\r\n    ],\r\n    \"totalAmount\": \"22\", // optional, but if present have precedence over sum of prices mentioned above.\r\n    \"paymentMethod\": \"VISA\", //optional\r\n    \"success_redirect\": \"https://merchant-success-page.com/\",\r\n    \"failure_redirect\": \"https://merchant-failure-page.com/\",\r\n    \"pending_redirect\": \"https://merchant-pending-page.com/\",\r\n    \"success_callback\": \"https://your.success.callback.com\",\r\n    \"failure_callback\": \"https://your.failure.callback.com\",\r\n    \"extraParam\": {\r\n        \"param1\": \"value1\",\r\n        \"param3\": \"value3\",\r\n        \"param4\": \"value4\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://api.paybomb.net/api/v1/createSession"},"status":"OK","code":200,"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\r\n    \"sessionUrl\": \"https://app.paybomb.tech/payment-session/691b02b48c73dd76eedaa379/\",\r\n    \"brandId\": \"brand_id_value\",\r\n    \"customerId\": \"68fed1855ebbe829416b08c6\",\r\n    \"sessionId\": \"691b02b48c73dd76eedaa379\",\r\n    \"expiryOn\": 1763378744,\r\n    \"createdOn\": 1763377844\r\n}"},{"id":"1c499a73-e28d-46cf-8ed2-8256e5afc8a3","name":"Session with CryptoConversion","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Accept","value":"*/*","type":"text"},{"key":"BrandId","value":"brand_id_value","description":"it is mandatory to pass the BrandId in header for each createSession request. ","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"customerId\": \"68fed1855ebbe829416b08c6\",\r\n    \"merchantRef\": \"rahultestcustomer1@paybomb.tech\", // optional\r\n    \"currency\": \"EUR\",\r\n    \"products\": [\r\n        {\r\n            \"name\": \"Product1\",\r\n            \"price\": \"10\"\r\n        },\r\n        {\r\n            \"name\": \"Product2\",\r\n            \"price\": \"12\"\r\n        }\r\n    ],\r\n    \"totalAmount\": \"22\", // optional, but if present have precedence over sum of prices mentioned above.\r\n    \"paymentMethod\": \"VISA\", //optional\r\n    \"success_redirect\": \"https://merchant-success-page.com/\",\r\n    \"failure_redirect\": \"https://merchant-failure-page.com/\",\r\n    \"pending_redirect\": \"https://merchant-pending-page.com/\",\r\n    \"success_callback\": \"https://your.success.callback.com\",\r\n    \"failure_callback\": \"https://your.failure.callback.com\",\r\n    \"extraParam\": {\r\n        \"param1\": \"value1\",\r\n        \"showCryptoConversion\": \"yes\",\r\n        \"cryptoCurrencies\": \"[\\\"BTC\\\",\\\"ETH\\\",\\\"USDT\\\",\\\"XRP\\\",\\\"LTC\\\",\\\"DOGE\\\",\\\"ETC\\\",\\\"BNB\\\",\\\"USDC\\\",\\\"SOL\\\",\\\"ADA\\\",\\\"BCH\\\",\\\"DASH\\\",\\\"BTG\\\",\\\"ZEC\\\",\\\"DGB\\\",\\\"EOS\\\",\\\"XLM\\\",\\\"TRX\\\",\\\"QTUM\\\",\\\"POL\\\",\\\"SHIB\\\",\\\"LINK\\\",\\\"DAI\\\",\\\"TON\\\",\\\"AVAX\\\",\\\"FDUSD\\\",\\\"ARB\\\",\\\"OP\\\"]\",\r\n        \"param3\": \"value3\",\r\n        \"param4\": \"value4\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://api.paybomb.net/api/v1/createSession"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"sessionUrl\": \"https://app.paybomb.tech/payment-session/691b02b48c73dd76eedaa379/\",\n    \"brandId\": \"brand_id_value\",\n    \"customerId\": \"68fed1855ebbe829416b08c6\",\n    \"sessionId\": \"691b02b48c73dd76eedaa379\",\n    \"expiryOn\": 1763378744,\n    \"createdOn\": 1763377844\n}"},{"id":"70f945eb-3963-44c1-b1e1-cf90772c7c86","name":"Invalid Session","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Accept","value":"*/*","type":"text"},{"key":"BrandId","value":"brand_id_value","description":"it is mandatory to pass the BrandId in header for each createSession request. ","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"customerId\": \"68fed1855ebbe829416b08c6\",\r\n    \"merchantRef\": \"rahultestcustomer1@paybomb.tech\", // optional\r\n    \"currency\": \"EUR\",\r\n    \"products\": [\r\n        {\r\n            \"name\": \"Product1\",\r\n            \"price\": \"10\"\r\n        },\r\n        {\r\n            \"name\": \"Product2\",\r\n            \"price\": \"12\"\r\n        }\r\n    ],\r\n    \"totalAmount\": \"22\", // optional, but if present have precedence over sum of prices mentioned above.\r\n    \"paymentMethod\": \"VISA\", //optional\r\n    \"success_redirect\": \"https://merchant-success-page.com/\",\r\n    \"failure_redirect\": \"https://merchant-failure-page.com/\",\r\n    \"pending_redirect\": \"https://merchant-pending-page.com/\",\r\n    \"success_callback\": \"https://your.success.callback.com\",\r\n    \"failure_callback\": \"https://your.failure.callback.com\",\r\n    \"extraParam\": {\r\n        \"param1\": \"value1\",\r\n        \"param3\": \"value3\",\r\n        \"param4\": \"value4\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://api.paybomb.net/api/v1/createSession"},"status":"Bad Request","code":400,"_postman_previewlanguage":"Text","header":[],"cookie":[],"responseTime":null,"body":"{\r\n    \"message\": \"Customer does not exist with this Customer Id\",\r\n    \"code\": \"Customer Id is invalid\"\r\n}"}],"_postman_id":"0515d8b7-c1c6-4489-81fc-951bbe3b9b89"},{"name":"Payout Session","id":"01de4224-8334-4a7d-a59c-59fb3ef38966","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer Token","type":"text"},{"key":"BrandId","value":"brand_id_value","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Accept","value":"*/*","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"customerId\": \"67c9983fba18400ab6cceb8f\",\r\n    \"currency\": \"USD\",\r\n    \"products\": [\r\n        {\r\n            \"name\": \"Product1\",\r\n            \"price\": \"2\"\r\n        }\r\n    ],\r\n    \"totalAmount\": \"2\",\r\n    \"tax_amount\": \"\", // optional\r\n    \"tax_percent\": \"\", // optional\r\n    \"type\": \"payout\",\r\n    \"success_redirect\": \"https://your.success.redirect.com\",\r\n    \"pending_redirect\": \"https://your.pending.redirect.com\",\r\n    \"failure_redirect\": \"https://your.failure.redirect.com\",\r\n    \"success_callback\": \"https://your.success.callback.com\",\r\n    \"failure_callback\": \"https://your.failure.callback.com\",\r\n    \"extraParam\": {\r\n        \"showCryptoConversion\": \"yes\",\r\n        \"cryptoCurrencies\": \"[\\\"BTC\\\",\\\"ETH\\\",\\\"USDT\\\",\\\"XRP\\\",\\\"LTC\\\",\\\"DOGE\\\",\\\"ETC\\\",\\\"BNB\\\",\\\"USDC\\\",\\\"SOL\\\",\\\"ADA\\\",\\\"BCH\\\",\\\"DASH\\\",\\\"BTG\\\",\\\"ZEC\\\",\\\"DGB\\\",\\\"EOS\\\",\\\"XLM\\\",\\\"TRX\\\",\\\"QTUM\\\",\\\"POL\\\",\\\"SHIB\\\",\\\"LINK\\\",\\\"DAI\\\",\\\"TON\\\",\\\"AVAX\\\",\\\"FDUSD\\\",\\\"ARB\\\",\\\"OP\\\"]\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://api.paybomb.net/api/v1/createSession","description":"<p>This API is used to initiate a payout session for a customer. By passing the <code>customerId</code> (generated via the <code>createCustomer</code> API) and specifying <code>\"type\": \"payout\"</code>, a payout session is started.<br />A <code>sessionURL</code> is returned in the response, which can be used to redirect the customer to the payout cashier. The customer can then select the payout method, pass required parameters, and the payout will be processed.</p>\n<h4 id=\"parameters\">Parameters:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><strong>customerId</strong></td>\n<td>string</td>\n<td>The unique ID of the customer for whom the payout session is created. This ID is generated by the <code>createCustomer</code> API.</td>\n</tr>\n<tr>\n<td><strong>currency</strong></td>\n<td>string</td>\n<td>The currency of the payout session (e.g., USD).</td>\n</tr>\n<tr>\n<td><strong>products</strong></td>\n<td>array</td>\n<td>A list of products associated with the payout (e.g., name and price).</td>\n</tr>\n<tr>\n<td><strong>totalAmount</strong></td>\n<td>string</td>\n<td>The total payout amount (optional. calculated dynamically if value is not passed).</td>\n</tr>\n<tr>\n<td><strong>tax_amount</strong></td>\n<td>string</td>\n<td>The tax amount to be applied (optional).</td>\n</tr>\n<tr>\n<td><strong>tax_percent</strong></td>\n<td>string</td>\n<td>The tax percentage to be applied (optional).</td>\n</tr>\n<tr>\n<td><strong>type</strong></td>\n<td>string</td>\n<td>Should be set to \"payout\" to initiate a payout session.</td>\n</tr>\n<tr>\n<td><strong>success_redirect</strong></td>\n<td>string</td>\n<td>The URL where the customer will be redirected after a successful payout.</td>\n</tr>\n<tr>\n<td><strong>pending_redirect</strong></td>\n<td>string</td>\n<td>The URL where the customer will be redirected after a pending payout.</td>\n</tr>\n<tr>\n<td><strong>failure_redirect</strong></td>\n<td>string</td>\n<td>The URL where the customer will be redirected after a failed payout attempt.</td>\n</tr>\n<tr>\n<td><strong>success_callback</strong></td>\n<td>string</td>\n<td>The callback URL for successful payout.</td>\n</tr>\n<tr>\n<td><strong>failure_callback</strong></td>\n<td>string</td>\n<td>The callback URL for failed payout.</td>\n</tr>\n<tr>\n<td><strong>extraParam</strong></td>\n<td>object</td>\n<td>Contains additional parameters for the payout session.</td>\n</tr>\n<tr>\n<td><strong>extraParam.showCryptoConversion</strong></td>\n<td>string</td>\n<td>Set to \"yes\" to display cryptocurrency conversion.</td>\n</tr>\n<tr>\n<td><strong>extraParam.cryptoCurrencies</strong></td>\n<td>string</td>\n<td>A list of accepted cryptocurrencies (e.g., BTC, ETH, USDT).</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"request-headers\">Request Headers:</h4>\n<ul>\n<li><p><strong>BrandId</strong>: Your unique brand ID (required).</p>\n</li>\n<li><p><strong>Content-Type</strong>: application/json (required).</p>\n</li>\n</ul>\n<h4 id=\"response\">Response:</h4>\n<p>The API will return a JSON object containing the <code>sessionURL</code> that can be used to redirect the customer to the payout cashier.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"sessionUrl\": \"https://app.paybomb.tech/payoutSession/68341ad35f895955355d5452/\",\n    \"brandId\": \"brand_id_value\",\n    \"customerId\": \"67c9983fba18400ab6cceb8f\",\n    \"sessionId\": \"68341ad35f895955355d5452\",\n    \"expiryOn\": 1748246103,\n    \"createdOn\": 1748245203\n}\n\n</code></pre>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"d2576231-7177-44fd-a34a-5bc0c13671b1","id":"d2576231-7177-44fd-a34a-5bc0c13671b1","name":"Cashier APIs","type":"folder"}},"urlObject":{"protocol":"https","path":["api","v1","createSession"],"host":["api","paybomb","net"],"query":[],"variable":[]}},"response":[{"id":"a6a1ee4d-5863-49ad-b72b-f861794bd942","name":"payoutSession","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer Token","type":"text"},{"key":"BrandId","value":"brand_id_value","type":"text"},{"key":"Accept","value":"*/*","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"customerId\": \"67c9983fba18400ab6cceb8f\",\r\n    \"currency\": \"USD\",\r\n    \"products\": [\r\n        {\r\n            \"name\": \"Product1\",\r\n            \"price\": \"2\"\r\n        }\r\n    ],\r\n    \"totalAmount\": \"2\",\r\n    \"tax_amount\": \"\", // optional\r\n    \"tax_percent\": \"\", // optional\r\n    \"type\": \"payout\",\r\n    \"success_redirect\": \"https://your.success.redirect.com\",\r\n    \"pending_redirect\": \"https://your.pending.redirect.com\",\r\n    \"failure_redirect\": \"https://your.failure.redirect.com\",\r\n    \"success_callback\": \"https://your.success.callback.com\",\r\n    \"failure_callback\": \"https://your.failure.callback.com\",\r\n    \"extraParam\": {\r\n        \"param1\": \"value1\",\r\n        \"param2\": \"value2\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://api.paybomb.net/api/v1/createSession"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"sessionUrl\": \"https://app.paybomb.tech/payoutSession/68341e385f895955355d5671/\",\n    \"brandId\": \"{yourBrandID}\",\n    \"customerId\": \"67c9983fba18400ab6cceb8f\",\n    \"sessionId\": \"68341e385f895955355d5671\",\n    \"expiryOn\": 1748246972,\n    \"createdOn\": 1748246072\n}"},{"id":"06e89e6c-b21d-4ee6-842a-82fcd613ba94","name":"payoutSession with Crypto Conversion","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer Token","type":"text"},{"key":"BrandId","value":"brand_id_value","type":"text"},{"key":"Accept","value":"*/*","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"customerId\": \"67c9983fba18400ab6cceb8f\",\r\n    \"currency\": \"USD\",\r\n    \"products\": [\r\n        {\r\n            \"name\": \"Product1\",\r\n            \"price\": \"2\"\r\n        }\r\n    ],\r\n    \"totalAmount\": \"2\",\r\n    \"tax_amount\": \"\",\r\n    \"tax_percent\": \"\",\r\n    \"type\": \"payout\",\r\n    \"success_redirect\": \"https://your.success.redirect.com\",\r\n    \"pending_redirect\": \"https://your.pending.redirect.com\",\r\n    \"failure_redirect\": \"https://your.failure.redirect.com\",\r\n    \"success_callback\": \"https://your.success.callback.com\",\r\n    \"failure_callback\": \"https://your.failure.callback.com\",\r\n    \"extraParam\": {\r\n        \"showCryptoConversion\": \"yes\",\r\n        \"cryptoCurrencies\": \"[\\\"BTC\\\",\\\"ETH\\\",\\\"USDT\\\",\\\"XRP\\\",\\\"LTC\\\",\\\"DOGE\\\",\\\"ETC\\\",\\\"BNB\\\",\\\"USDC\\\",\\\"SOL\\\",\\\"ADA\\\",\\\"BCH\\\",\\\"DASH\\\",\\\"BTG\\\",\\\"ZEC\\\",\\\"DGB\\\",\\\"EOS\\\",\\\"XLM\\\",\\\"TRX\\\",\\\"QTUM\\\",\\\"POL\\\",\\\"SHIB\\\",\\\"LINK\\\",\\\"DAI\\\",\\\"TON\\\",\\\"AVAX\\\",\\\"FDUSD\\\",\\\"ARB\\\",\\\"OP\\\"]\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://api.paybomb.net/api/v1/createSession"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"sessionUrl\": \"https://app.paybomb.tech/payoutSession/68341e385f895955355d5671/\",\n    \"brandId\": \"{yourBrandID}\",\n    \"customerId\": \"67c9983fba18400ab6cceb8f\",\n    \"sessionId\": \"68341e385f895955355d5671\",\n    \"expiryOn\": 1748246972,\n    \"createdOn\": 1748246072\n}"}],"_postman_id":"01de4224-8334-4a7d-a59c-59fb3ef38966"},{"name":"Check Status - Payin","id":"2fa57371-d2a6-4b76-bd40-187460c96ed6","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Authorization","value":"Bearer Token"}],"url":"https://api.paybomb.net/api/v1/purchases/{Session ID}/","description":"<p>This endpoint retrieves the details of a session identified by the provided session ID.</p>\n<blockquote>\n<p>Note that this API only respond once the SessionURL, received in the response for session API, is clicked. </p>\n</blockquote>\n<blockquote>\n<p>Once the SessionURL is clicked and the user has selected a payment method and click on \"Pay\" button, a purchase is created on our backend. If you call this API before that, you will get an error.</p>\n</blockquote>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"d2576231-7177-44fd-a34a-5bc0c13671b1","id":"d2576231-7177-44fd-a34a-5bc0c13671b1","name":"Cashier APIs","type":"folder"}},"urlObject":{"protocol":"https","path":["api","v1","purchases","{Session ID}",""],"host":["api","paybomb","net"],"query":[],"variable":[]}},"response":[{"id":"64d16c44-3e5b-49d1-811a-4d90a8c6b256","name":"202 Success","originalRequest":{"method":"GET","header":[{"key":"Authorization","value":"Bearer Token"}],"url":"https://api.paybomb.net/api/v1/purchases/6950e4ba5205280b71ac2010/"},"status":"Accepted","code":202,"_postman_previewlanguage":"Text","header":[{"key":"Date","value":"Sun, 28 Dec 2025 08:03:36 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"Nel","value":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}"},{"key":"X-Frame-Options","value":"ALLOW-FROM *"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"x-session-id","value":"d5308b2a-537d-466a-8273-f754ba3491b8"},{"key":"Vary","value":"Origin"},{"key":"Vary","value":"Access-Control-Request-Method"},{"key":"Vary","value":"Access-Control-Request-Headers"},{"key":"Server","value":"cloudflare"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"0"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 f89daa99b6a349030b23247a4977cb5e.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"IAD61-P10"},{"key":"X-Amz-Cf-Id","value":"Ed-N_b__1xPz7yrAt9mMc6JrgiZqMiuPi3uJbZ4AeuUKm-Ziiohlcw=="},{"key":"cf-cache-status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=V90OEeQkl%2Fh028giW2T2qMbuNADZ5EvKMZG33harMVuXpmo%2BnNQm5JeDtH2802Oa8hw5kJG737sqfdiLVuvIq%2F5E5tHoRdK8Zj6OU6yO255A\"}]}"},{"key":"CF-RAY","value":"9b4f8ac7caf2f4ca-IAD"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400"}],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":"{\n    \"purchaseId\": \"6950e4e3e4a1b008c2fae5c3\",\n    \"client\": {\n        \"customerId\": \"69034a5a61b460084d20c23b\",\n        \"email\": \"rahul+23@paybomb.tech\",\n        \"phone\": \"+919634088561\",\n        \"full_name\": \"Rahul Agarwal\",\n        \"street_address\": \"Vaishali Jaipur\",\n        \"country\": \"NA\",\n        \"city\": \"jaipur\",\n        \"zip_code\": \"202020\",\n        \"cc\": [],\n        \"bcc\": [],\n        \"stateCode\": \"RA\"\n    },\n    \"updated_on\": 1766909180,\n    \"type\": \"purchase\",\n    \"paymentMethod\": \"MASTER,VISA,JCB,AMEX,CRYPTO-BRIDGE,FawryPay,INTERAC-E-TRANSFER,INTERAC-REQUEST-MONEY,MOBILEMONEY,NEOSURF,PAYID,PIX,SPEI,THIRDPARTY-UPI,DISCOVER,BANKTRANSFER,VIRTUAL-IBAN,UPI-COLLECT,UPI-QR,VIRTUAL-ACCOUNT,DINERS,NETBANKING,THIRDPARTY-NETBANKING,MAYA,GCASH,INTERAC-EXPRESS,QRPH\",\n    \"amountUnit\": \"MAJOR\",\n    \"errorMsg\": \"This customer can not be processed !\",\n    \"errorCode\": \"NA\",\n    \"savedCardUsed\": \"NO\",\n    \"redirectType\": \"POST\",\n    \"force_recurring\": false,\n    \"created_on\": 1766909155,\n    \"merchantRef\": \"6950e4e3e4a1b008c2fae5c3\",\n    \"merchantName\": \"rahul_test\",\n    \"merchantType\": \"MERCHANT\",\n    \"purchase\": {\n        \"currency\": \"EUR\",\n        \"products\": [\n            {\n                \"name\": \"NA\",\n                \"quantity\": 1.0,\n                \"price\": 22.0,\n                \"discount\": 0,\n                \"tax_percent\": \"0.00\"\n            }\n        ],\n        \"total\": 22.0,\n        \"requestAmount\": 22.0,\n        \"language\": \"en\",\n        \"notes\": \"\",\n        \"debt\": 0,\n        \"total_formatted\": 1.0,\n        \"taxAmount\": 0.0,\n        \"taxPercent\": 0.0,\n        \"request_client_details\": [],\n        \"email_message\": \"\"\n    },\n    \"issuer_details\": {\n        \"website\": \"\",\n        \"legal_street_address\": \"\",\n        \"legal_country\": \"\",\n        \"legal_city\": \"\",\n        \"legal_zip_code\": \"\",\n        \"bank_accounts\": [\n            {}\n        ],\n        \"legal_name\": \"Testing\",\n        \"brand_name\": \"Testing\",\n        \"registration_number\": \"\",\n        \"tax_number\": \"\"\n    },\n    \"transaction_data\": {\n        \"payment_method\": \"\",\n        \"flow\": \"payform\",\n        \"extra\": {\n            \"expiry_month\": \"07\",\n            \"amount\": 22.0,\n            \"card_issuer\": \"CIAGROUP\",\n            \"masked_pan\": \"55555555****4444\",\n            \"card_brand\": \"MASTER\",\n            \"card_issuer_country\": \"BR\",\n            \"card_type\": \"DEBIT\",\n            \"cardholder_name\": \"rahul\",\n            \"expiry_year\": \"30\"\n        },\n        \"country\": \"\",\n        \"attempts\": [\n            {\n                \"client_ip\": \"183.83.53.214\",\n                \"type\": \"execute\",\n                \"payment_method\": \"MASTER\",\n                \"flow\": \"payform\",\n                \"successful\": false,\n                \"country\": \"BR\",\n                \"processing_time\": 1766909179,\n                \"extra\": {\n                    \"expiry_month\": \"07\",\n                    \"amount\": 22.0,\n                    \"card_issuer\": \"CIAGROUP\",\n                    \"masked_pan\": \"55555555****4444\",\n                    \"card_brand\": \"MASTER\",\n                    \"card_issuer_country\": \"BR\",\n                    \"card_type\": \"DEBIT\",\n                    \"cardholder_name\": \"rahul\",\n                    \"expiry_year\": \"30\"\n                },\n                \"error\": {\n                    \"message\": \"This customer can not be processed !\",\n                    \"code\": \"no_mid_found\"\n                }\n            }\n        ]\n    },\n    \"status\": \"ERROR\",\n    \"status_history\": [\n        {\n            \"status\": \"created\",\n            \"timestamp\": 1766909155\n        },\n        {\n            \"status\": \"pending_execute\",\n            \"timestamp\": 1766909179\n        },\n        {\n            \"status\": \"error\",\n            \"timestamp\": 1766909180\n        },\n        {\n            \"status\": \"viewed\",\n            \"timestamp\": 1766909186\n        }\n    ],\n    \"viewedOn\": 1766909186,\n    \"is_test\": false,\n    \"brand_id\": \"59c5ed48-caf9-464a-ba54-26e1e02bc1bc\",\n    \"send_receipt\": false,\n    \"is_recurring_token\": false,\n    \"skip_capture\": false,\n    \"reference_generated\": \"PS334\",\n    \"issued\": \"2025-12-28\",\n    \"due\": 1766909155,\n    \"refund_upto\": 0,\n    \"cc_descriptor\": \"\",\n    \"fraudScore\": \"0\",\n    \"trustScore\": \"0\",\n    \"extraFee\": \"0\",\n    \"paidOn\": 0,\n    \"receivedAmt\": 0.0,\n    \"taxAmount\": 0.0,\n    \"surcharge\": 0.0,\n    \"surchargeType\": \"\",\n    \"sessionId\": \"6950e4ba5205280b71ac2010\",\n    \"refund_availability\": \"NONE\",\n    \"refundable_amount\": 0.0,\n    \"success_redirect\": \"https://google.com/\",\n    \"failure_redirect\": \"https://google.com/\",\n    \"pending_redirect\": \"https://google.com/\",\n    \"cancel_redirect\": \"\",\n    \"success_callback\": \"https://your.success.callback.com\",\n    \"failure_callback\": \"https://your.failure.callback.com\",\n    \"platform\": \"API\",\n    \"checkout_url\": \"https://api.choicepay.ca/payments/adb6e07f74ec6197ef764909736d478e/\",\n    \"direct_post_url\": \"https://api.choicepay.ca/api/v1/p/6950e4e3e4a1b008c2fae5c3/\",\n    \"payoutProcess\": false\n}"},{"id":"81dc2d08-0476-42d5-8e93-c6b6b00440de","name":"400 Bad Request","originalRequest":{"method":"GET","header":[{"key":"Authorization","value":"Bearer Token"}],"url":"https://api.paybomb.net/api/v1/purchases/6950e4ba5205280b71ac2010/"},"status":"Bad Request","code":400,"_postman_previewlanguage":"Text","header":[{"key":"Date","value":"Sun, 28 Dec 2025 08:03:36 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"Nel","value":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}"},{"key":"X-Frame-Options","value":"ALLOW-FROM *"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"x-session-id","value":"d5308b2a-537d-466a-8273-f754ba3491b8"},{"key":"Vary","value":"Origin"},{"key":"Vary","value":"Access-Control-Request-Method"},{"key":"Vary","value":"Access-Control-Request-Headers"},{"key":"Server","value":"cloudflare"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"0"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 f89daa99b6a349030b23247a4977cb5e.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"IAD61-P10"},{"key":"X-Amz-Cf-Id","value":"Ed-N_b__1xPz7yrAt9mMc6JrgiZqMiuPi3uJbZ4AeuUKm-Ziiohlcw=="},{"key":"cf-cache-status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=V90OEeQkl%2Fh028giW2T2qMbuNADZ5EvKMZG33harMVuXpmo%2BnNQm5JeDtH2802Oa8hw5kJG737sqfdiLVuvIq%2F5E5tHoRdK8Zj6OU6yO255A\"}]}"},{"key":"CF-RAY","value":"9b4f8ac7caf2f4ca-IAD"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400"}],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":"{\n    \"message\": \"PurchaseId Not found.\",\n    \"code\": \"transaction_error\"\n}"},{"id":"386c56a6-3528-439d-9ecc-37c20ac2b289","name":"401 Unauthorized","originalRequest":{"method":"GET","header":[{"key":"Authorization","value":"Bearer Token"}],"url":"https://api.paybomb.net/api/v1/purchases/{Session ID}/"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"Text","header":[{"key":"Date","value":"Sun, 28 Dec 2025 08:03:36 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"Nel","value":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}"},{"key":"X-Frame-Options","value":"ALLOW-FROM *"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"x-session-id","value":"d5308b2a-537d-466a-8273-f754ba3491b8"},{"key":"Vary","value":"Origin"},{"key":"Vary","value":"Access-Control-Request-Method"},{"key":"Vary","value":"Access-Control-Request-Headers"},{"key":"Server","value":"cloudflare"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"0"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 f89daa99b6a349030b23247a4977cb5e.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"IAD61-P10"},{"key":"X-Amz-Cf-Id","value":"Ed-N_b__1xPz7yrAt9mMc6JrgiZqMiuPi3uJbZ4AeuUKm-Ziiohlcw=="},{"key":"cf-cache-status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=V90OEeQkl%2Fh028giW2T2qMbuNADZ5EvKMZG33harMVuXpmo%2BnNQm5JeDtH2802Oa8hw5kJG737sqfdiLVuvIq%2F5E5tHoRdK8Zj6OU6yO255A\"}]}"},{"key":"CF-RAY","value":"9b4f8ac7caf2f4ca-IAD"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Incorrect secret_key\",\n    \"code\": \"authentication_failed\"\n}"}],"_postman_id":"2fa57371-d2a6-4b76-bd40-187460c96ed6"},{"name":"Check Status - Payout","id":"254ea1db-3274-4f09-b42d-95e82c4fc32d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Authorization","value":"Bearer Token","type":"text"}],"url":"https://app.paybomb.tech/api/v1/getpayout/{Session ID}/","description":"<p>This API tells you about all the details of a Payout, including its history</p>\n<h3 id=\"mandatory\">Mandatory</h3>\n<p>you need to pass the payoutId or session id in the API URL</p>\n<h3 id=\"possible-value-of-status\">Possible Value of Status</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Status</strong></th>\n<th><strong>Notes</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>paid</td>\n<td>Transaction Successful</td>\n</tr>\n<tr>\n<td>payout_in_process</td>\n<td>payout is under Processing.</td>\n</tr>\n<tr>\n<td>error</td>\n<td>Transaction has Failed.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"d2576231-7177-44fd-a34a-5bc0c13671b1","id":"d2576231-7177-44fd-a34a-5bc0c13671b1","name":"Cashier APIs","type":"folder"}},"urlObject":{"path":["getpayout","{Session ID}",""],"host":["https://app.paybomb.tech/api/v1"],"query":[],"variable":[]}},"response":[{"id":"61a47461-520a-42d7-a45b-3921ee5494b5","name":"Success","originalRequest":{"method":"GET","header":[{"key":"Authorization","value":"Bearer Token","type":"text"}],"url":"https://app.paybomb.tech/api/v1/getpayout/{Session ID}/"},"status":"Accepted","code":202,"_postman_previewlanguage":"Text","header":[{"key":"Date","value":"Mon, 27 Apr 2026 07:03:52 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"Nel","value":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}"},{"key":"X-Frame-Options","value":"ALLOW-FROM *"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"x-session-id","value":"9be65213-e200-4ef2-831c-683022389e8b"},{"key":"Vary","value":"Origin"},{"key":"Vary","value":"Access-Control-Request-Method"},{"key":"Vary","value":"Access-Control-Request-Headers"},{"key":"Server","value":"cloudflare"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"0"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 ea9784182c7536f5ce15ec71cf0089d6.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"IAD61-P10"},{"key":"X-Amz-Cf-Id","value":"SQqBgIYJCqc_HzF2NrYyoiCCGUdxGyPFZ3OzmUrrL-XBe56tKWTifA=="},{"key":"cf-cache-status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=dRx0V9WF8UC%2FPmYeyh%2Fl2YI7rIhT15NcQDiRVHdKuzF4jjsVyYmbl2imFi%2FSpP4VpmIHsFmO0xzXUjyO1%2BwKeupdremHVjRNwtqENY%2FZxgVpN7KFFzAhSQDhOMdd62Anr2zN\"}]}"},{"key":"CF-RAY","value":"9f2bf84969fa9c85-IAD"}],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":"{\n    \"payoutId\": \"65ffadb4c1c83822903a9205\",\n    \"client\": {\n        \"email\": \"customer141@email.uk\",\n        \"full_name\": \"Test Person-uk\",\n        \"street_address\": \"Random city address\",\n        \"country\": \"SG\",\n        \"city\": \"Singapore\",\n        \"zip_code\": \"123456\",\n        \"stateCode\": \"test\"\n    },\n    \"updated_on\": 1711254964,\n    \"payoutMethod\": \"Payout-BANKTRANSFER\",\n    \"beneficiaryDetail\":{\n    \"bankName\": \"DBS Bank\",      \n    \"bankAccountName\": \"test test\",\n    \"bankAccountCurrency\": \"SGD\",\n    \"bankAccountNumber\": \"12345640\",\n    \"bankCountryCode\" : \"SG\",\n    \"swiftCode\": \"DBSSSGSG\",\n    \"routing_param\" :\n    {\n        \"bankCode\": \"897678\",\n        \"bankBranchCode\" : \"888\"\n           \n    }\n     },\n    \"amountUnit\": \"MAJOR\",\n    \"amount\": 1000.0,\n    \"errorMsg\": \"Currency Account has insufficient balance.\",\n    \"purpose\": \"test payout\",\n    \"created_on\": 1711254972,\n    \"merchantRef\": \"65ffadb4c1c83822903a9205\",\n    \"status\": \"ERROR\",\n    \"status_history\": [\n        {\n            \"status\": \"created\",\n            \"timestamp\": 1711254964\n        },\n        {\n            \"status\": \"error\",\n            \"timestamp\": 1711254972\n        }\n    ],\n    \"currency\": \"USD\",\n    \"success_callback\": \"https://success.com\",\n    \"failure_callback\": \"https://failure.com\"\n}"}],"_postman_id":"254ea1db-3274-4f09-b42d-95e82c4fc32d"}],"id":"d2576231-7177-44fd-a34a-5bc0c13671b1","description":"<p>Paybomb Cashier is a unified payment management solution that connects with leading PSP and acquirers, offering merchants one convenient access point to simplify transaction processing and enhance efficiency.</p>\n<p>To start the cashier system, a <strong>payment session</strong> is initiated—a secure, temporary environment generated by our payment gateway. This session encapsulates all transaction details and state information before the cashier loads, overseeing the complete lifecycle of a payment attempt—from initial setup to final completion—ensuring every necessary detail is managed safely and consistently.</p>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"809633dc-2921-4f42-a676-006354be47ac"}},{"listen":"test","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"23f97b44-fefc-4a71-9aa3-8e2b0e8b879f"}}],"_postman_id":"d2576231-7177-44fd-a34a-5bc0c13671b1"},{"name":"User Defined Fields (UDF)","item":[],"id":"362d1e39-98c2-4427-b00b-8e976ce40883","description":"<p>User Defined Fields (also referred to as Merchant Defined Parameters) allow you to attach custom identifiers to transactions. These identifiers can help you map transactions to your internal systems and configure advanced routing rules.</p>\n<p>Once created, you can pass the parameter in the purchases or session API using the <code>extraParam</code> object in the payload, to receive the same in the API response and the following webhooks.</p>\n<h3 id=\"adding-a-user-defined-field\">Adding a User Defined Field</h3>\n<ol>\n<li><p>Click <strong>Add Parameters</strong>.</p>\n</li>\n<li><p>Enter the <strong>Parameter Name</strong>.</p>\n</li>\n<li><p>Choose the <strong>Value Type</strong> (Numeric, String, or Boolean).</p>\n</li>\n<li><p>Click <strong>Add</strong> to save.</p>\n</li>\n</ol>\n<p>Here is how you can define UDFs in Paybomb's app.</p>\n<img src=\"https://content.pstmn.io/8ad24186-aa6c-46c4-b825-300be38709e3/VW50aXRsZWQgZGVzaWduICg0MCkucG5n\" alt />\n\n<h3 id=\"using-udf-in-api-requests\">Using UDF in API Requests</h3>\n<p>Once created, you can pass the parameter in the <code>purchases</code> or <code>session</code> API using the <code>extraParam</code> object in the payload, to receive the same in the API response and the following webhooks.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"extraParam\": {\n    \"userDefinedParameter\": \"value\"\n}\n\n</code></pre>\n<h3 id=\"best-practices\">Best Practices</h3>\n<ul>\n<li><p>Use <strong>consistent naming conventions</strong> for parameters to avoid confusion across integrations.</p>\n</li>\n<li><p>Keep the number of UDFs minimal — only add fields that provide clear value (e.g., customer segment, order type, risk score).</p>\n</li>\n<li><p>Leverage UDFs in <strong>rule-based routing</strong> to optimize processing flows (e.g., route high-value transactions to a specific MID).</p>\n</li>\n<li><p>Document your UDFs internally so operations and support teams can easily reference them.</p>\n</li>\n</ul>\n<p>Note:<br />This feature is enabled only for the whitelabel merchant solution. If you are using a merchant solution, please contact your Account Manager for doing these changes.</p>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"9e5c7470-d2f6-4a7d-95a9-d48ad50365f9"}},{"listen":"test","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"87661eaf-5c05-4585-a577-1375b2db2f06"}}],"_postman_id":"362d1e39-98c2-4427-b00b-8e976ce40883"},{"name":"Recurring Payments","item":[{"name":"Registration Flow","item":[],"id":"885ecdf7-9893-4ca4-8d46-f6c896104060","description":"<img src=\"https://content.pstmn.io/aed8483b-3304-43c4-a305-291e37c9b534/aW1hZ2UucG5n\" alt height=\"1489\" width=\"734\" />","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"930316c4-f4fc-46ee-bfc3-d80438a65482"}},{"listen":"test","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"e491cb9e-48bf-4a72-9dd6-83e2ad330c1a"}}],"_postman_id":"885ecdf7-9893-4ca4-8d46-f6c896104060"},{"name":"Recurring Flow","item":[],"id":"489161d7-5e54-4afe-a67c-17e2669ef7f3","description":"<p><strong>For cases where the Merchant handles the scheduling:</strong></p>\n<img src=\"https://content.pstmn.io/0fde3212-41fe-4574-9371-3dcc9cee33ec/aW1hZ2UucG5n\" alt height=\"541\" width=\"703\" />\n\n<p><strong>For cases where Paybomb handles the scheduling:</strong></p>\n<img src=\"https://content.pstmn.io/384c80a7-159a-4777-ac2c-0bcbb4aa66a8/aW1hZ2UucG5n\" alt height=\"671\" width=\"806\" />","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"4b29f57d-c248-4e52-bc52-ef28a95c45b7"}},{"listen":"test","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"d3057b61-b129-40b2-b030-6e02c1ce0c81"}}],"_postman_id":"489161d7-5e54-4afe-a67c-17e2669ef7f3"},{"name":"APIs","item":[{"name":"Create Customer","id":"c7568edf-b1ed-4679-b30f-e7a2800aa646","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer Token","type":"text"},{"key":"BrandId","value":"brand_id_value","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"fullName\": \"Rahul Agarwal\",\n    \"emailId\": \"rahul+26@paybomb.tech\",\n    \"dateOfBirth\": \"1994-06-03\",\n    \"phoneNo\": \"+91 797639082\",\n    \"city\": \"Jaipur\",\n    \"stateCode\": \"RJ\",\n    \"zipCode\": \"302018\",\n    \"address\": \"House Number 53, Vaishali Nagar, Jaipur\",\n    \"country\": \"IN\",\n    \"merchantCustomerId\": \"rahultestcustomer@paybomb.tech\",\n    \"CustRegDate\": \"2023-12-27\", //non-mandatory - customer registration date on merchant site\n    \"SuccessTxn\": \"32\", //non-mandatory - total successful customer orders on merchant site\n    \"extraParam\": {\n        \"param1\": \"value1\",\n        \"param2\": \"value2\",\n        \"param3\": \"value3\",\n        \"param4\": \"value4\"\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/customer","description":"<p><strong>OVERIEW</strong></p>\n<p>The <strong>createCustomer API</strong> allows merchants to create a customer profile on Paybomb when a user visits their website, facilitating a seamless payment experience by pre-filling the customer's details, on the Paybomb Cashier.</p>\n<p>The API takes in customer information and returns a unique customerID that can be passed in purchase payload, eliminating the need for customers to manually enter their details during transactions.</p>\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><strong>Required</strong></th>\n<th>Description</th>\n<th>Example</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>merchantCustomerId</td>\n<td>String</td>\n<td>Yes</td>\n<td>unique customer ID provided by merchant. This can be email, mobile or an alphanumeric string</td>\n<td><a href=\"https://mailto:rahultestcustomer@paybomb.tech\">rahultestcustomer@paybomb.tech</a></td>\n</tr>\n<tr>\n<td>fullName</td>\n<td>String</td>\n<td>Yes</td>\n<td>Full name of the customer.</td>\n<td>Rahul Agarwal</td>\n</tr>\n<tr>\n<td>emailId</td>\n<td>String</td>\n<td>Yes</td>\n<td>Email address of the customer.</td>\n<td><a href=\"https://mailto:test@paybomb.tech\">test@paybomb.tech</a></td>\n</tr>\n<tr>\n<td>dateOfBirth</td>\n<td>String</td>\n<td>Optional</td>\n<td>Customer's date of birth in YYYY-MM-DD format.</td>\n<td>1995-12-27</td>\n</tr>\n<tr>\n<td>phoneNo</td>\n<td>String</td>\n<td>Yes</td>\n<td>Customer's phone number. Preferred with the country code</td>\n<td>+91 797639082</td>\n</tr>\n<tr>\n<td>city</td>\n<td>String</td>\n<td>Optional</td>\n<td>City of the customer.</td>\n<td>Jaipur</td>\n</tr>\n<tr>\n<td>stateCode</td>\n<td>String</td>\n<td>Yes</td>\n<td>State code of the customer.</td>\n<td>RJ</td>\n</tr>\n<tr>\n<td>zipCode</td>\n<td>String</td>\n<td>Optional</td>\n<td>Postal code of the customer's location.</td>\n<td>302018</td>\n</tr>\n<tr>\n<td>address</td>\n<td>String</td>\n<td>Optional</td>\n<td>Full address of the customer.</td>\n<td>House Number 53, Vaishali Nagar, Jaipur</td>\n</tr>\n<tr>\n<td>country</td>\n<td>String</td>\n<td>Yes</td>\n<td>Country code (ISO 3166-1 alpha-2).</td>\n<td>IN</td>\n</tr>\n<tr>\n<td>custRegDate</td>\n<td>Sting</td>\n<td>Optional</td>\n<td>Customer registration date on merchant site in YYYY-MM-DD format.</td>\n<td>2023-12-27</td>\n</tr>\n<tr>\n<td>successTxn</td>\n<td>String</td>\n<td>Optional</td>\n<td>Number of successful transactions customer has carried on merchant site.</td>\n<td>32</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"user-flow\"><strong>User Flow</strong></h3>\n<ol>\n<li><p><strong>Customer visits merchant's website</strong>: The customer selects the product or service and proceeds to checkout page.</p>\n</li>\n<li><p><strong>Merchant calls the</strong> <strong><code>createCustomer</code></strong> <strong>API</strong>: The merchant sends a <code>POST</code> request to the Paybomb API with the customer's details.</p>\n</li>\n<li><p><strong>Customer ID generation</strong>: Paybomb processes the request and generates a unique <code>customerId</code> which is returned in the response.</p>\n</li>\n<li><p><strong>Payment Process</strong>: The merchant uses the <code>customerId</code> for subsequent session creation, ensuring the customer doesn’t need to re-enter their details for future payments.</p>\n</li>\n</ol>\n<hr />\n<h3 id=\"benefits\"><strong>Benefits</strong></h3>\n<ul>\n<li><p><strong>Seamless user experience</strong>: The customer does not have to enter their details manually for every purchase.</p>\n</li>\n<li><p><strong>Faster Checkout</strong>: The merchant can use the <code>customerId</code> for faster payment processing.</p>\n</li>\n<li><p><strong>Data Security</strong>: Customer details are stored securely and can be reused across transactions, reducing the chances of errors.</p>\n</li>\n</ul>\n<h3 id=\"implementing-createcustomer-on-merchant-site\">Implementing createCustomer on merchant site:</h3>\n<p>The <code>createCustomer</code> can be implemented on merchant site in one of two ways, depending on merchant’s integration flow:</p>\n<p><strong>At Checkout:</strong></p>\n<p>When a customer initiates the checkout process, your system should invoke the <code>createCustomer</code> API, before actually starting the session.</p>\n<ul>\n<li><p><strong>Call</strong> <strong><code>createCustomer</code></strong>: This API call generates a unique customer ID.</p>\n</li>\n<li><p><strong>Use of Customer ID:</strong> Pass the returned customer ID in Session API, when creating a payment session.</p>\n</li>\n</ul>\n<p><strong>Upon Customer Login:</strong></p>\n<p>Alternatively, merchants may choose to call <code>createCustomer</code> at the time of customer login on their site.</p>\n<ul>\n<li><p><strong>Persistent Customer Profiles:</strong> This approach can help build or maintain a persistent customer profile, ensuring the customer ID is available for any subsequent payment sessions without needing to call <code>createCustomer</code> again.</p>\n</li>\n<li><p><strong>Integration Flexibility:</strong> This is useful for merchants who want to initialize customer data early in the customer journey rather than during checkout.</p>\n</li>\n</ul>\n<p>The method you choose depends on your business requirements and how your system is architected. Regardless of when you call it, the resulting customer ID must be passed to the <code>createSession</code> API to initiate a payment session.</p>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"a1593e51-d80d-40c4-9c2c-31943fe87354","id":"a1593e51-d80d-40c4-9c2c-31943fe87354","name":"Recurring Payments","type":"folder"}},"urlObject":{"path":["customer"],"host":["https://app.paybomb.tech/api/v1"],"query":[],"variable":[]}},"response":[{"id":"9620f30d-f95f-424e-80ac-b34165ebbeb0","name":"Success","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer Token","type":"text"},{"key":"BrandId","value":"brand_id_value","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"fullName\": \"Rahul Agarwal\",\r\n    \"emailId\": \"rahul+26@paybomb.tech\",\r\n    \"dateOfBirth\": \"1994-06-03\",\r\n    \"phoneNo\": \"+91 797639082\",\r\n    \"city\": \"Jaipur\",\r\n    \"stateCode\": \"RJ\",\r\n    \"zipCode\": \"302018\",\r\n    \"address\": \"House Number 53, Vaishali Nagar, Jaipur\",\r\n    \"country\": \"IN\",\r\n    \"merchantCustomerId\": \"rahultestcustomer@paybomb.tech\",\r\n    \"CustRegDate\": \"2023-12-27\", //non-mandatory - customer registration date on merchant site\r\n    \"SuccessTxn\": \"32\", //non-mandatory - total successful customer orders on merchant site\r\n    \"extraParam\": {\r\n        \"param1\": \"value1\",\r\n        \"param2\": \"value2\",\r\n        \"param3\": \"value3\",\r\n        \"param4\": \"value4\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/customer"},"status":"OK","code":200,"_postman_previewlanguage":"Text","header":[{"key":"Date","value":"Sat, 31 Jan 2026 14:56:20 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"Nel","value":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}"},{"key":"X-Frame-Options","value":"ALLOW-FROM *"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"x-session-id","value":"d248f17f-e674-4a0a-8dfe-b862eabc5cc5"},{"key":"Vary","value":"Origin"},{"key":"Vary","value":"Access-Control-Request-Method"},{"key":"Vary","value":"Access-Control-Request-Headers"},{"key":"Server","value":"cloudflare"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"0"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 6225fd23298b677711e0721417a30ae2.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"IAD61-P10"},{"key":"X-Amz-Cf-Id","value":"bbu1ItT0MbY2zy91fGODaOu6WWheF2CPo7DPYkIh-lxzFZFdFDgEyw=="},{"key":"cf-cache-status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=lUm%2FZBBs45Cas%2FwmM6M3RYhfSTKtEYd5XVPihkyRHHF92PBKUR%2BaNp5%2F65qClhn8h%2FMKHq6yiUSf2WFapmiBdVJdzE86w6J8%2B%2F7AvvxYzio%3D\"}]}"},{"key":"CF-RAY","value":"9c6a0e1fbf4657b2-IAD"}],"cookie":[],"responseTime":null,"body":"{\n    \"customerId\": \"691afbc6fd96d34a8113a34d\",\n    \"merchantCustomerId\": \"rahultestcustomer@paybomb.tech\",\n    \"fullName\": \"Rahul Agarwal\",\n    \"emailId\": \"rahul+26@paybomb.tech\",\n    \"dateOfBirth\": \"1994-06-03\",\n    \"phoneNo\": \"+91 797639082\",\n    \"brandID\": \"1d666074-39be-4b90-aec9-e9de78fbdcb9\",\n    \"city\": \"Jaipur\",\n    \"zipCode\": \"302018\",\n    \"address\": \"House Number 53, Vaishali Nagar, Jaipur\",\n    \"country\": \"IN\",\n    \"stateCode\": \"RJ\",\n    \"custRegDate\": \"2023-12-27\",\n    \"successTrans\": 0,\n    \"createdOn\": 1763376070,\n    \"lastUpdated\": 0,\n    \"lastActivity\": 1763376070,\n    \"extraParam\": {\n        \"param1\": \"value1\",\n        \"param2\": \"value2\",\n        \"param3\": \"value3\",\n        \"param4\": \"value4\"\n    }\n}"}],"_postman_id":"c7568edf-b1ed-4679-b30f-e7a2800aa646"},{"name":"Get Customer","id":"102ab40d-12be-4a0a-beca-628f365696ce","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Authorization","value":"Bearer Token","type":"text"},{"key":"BrandId","value":"brand_id_value","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Accept","value":"*/*","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"merchantCustomerId\": \"rahultestcustomer1@paybomb.tech\"\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.net/api/v1/customer","description":"<p>This endpoint makes an HTTP GET request to retrieve customer information from the Paybomb API.</p>\n<h3 id=\"request\">Request</h3>\n<p>The request does not include any query parameters, but it uses a raw request body with the following parameter \"merchantCustomerId\", which will be the customer id on the merchant's side.</p>\n<h3 id=\"response\">Response</h3>\n<p>The response of this request can be documented as a JSON schema.</p>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"a1593e51-d80d-40c4-9c2c-31943fe87354","id":"a1593e51-d80d-40c4-9c2c-31943fe87354","name":"Recurring Payments","type":"folder"}},"urlObject":{"protocol":"https","path":["api","v1","customer"],"host":["app","paybomb","net"],"query":[],"variable":[]}},"response":[{"id":"a12e6017-5ca5-40c3-8d5c-07b97b4a3ac1","name":"Success","originalRequest":{"method":"GET","header":[{"key":"Authorization","value":"Bearer Token","type":"text"},{"key":"BrandId","value":"brand_id_value","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Accept","value":"*/*","type":"text"}],"url":"https://app.paybomb.net/api/v1/customer"},"status":"OK","code":200,"_postman_previewlanguage":"Text","header":[{"key":"Date","value":"Sat, 31 Jan 2026 15:00:13 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"Nel","value":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}"},{"key":"x-session-id","value":"74520247-3540-48b2-81f9-33fd50e71e01"},{"key":"Vary","value":"Origin"},{"key":"Vary","value":"Access-Control-Request-Method"},{"key":"Vary","value":"Access-Control-Request-Headers"},{"key":"Server","value":"cloudflare"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"0"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Frame-Options","value":"ALLOW-FROM *"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Set-Cookie","value":"SESSION=NDRjYjEwZGQtNTAyMy00MDA1LWFiNTUtNTBmNmY2YWY1NjZj; Path=/; Secure; HttpOnly; SameSite=Strict"},{"key":"cf-cache-status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=gy0s5195rsESyn%2B0cQcmwej6qKnbNzrAcSxW%2F%2FrtkYk52a4Lipz%2FTBcpX5IjTYOHLNsLsPeT9jJFd4rUsIPUJbu4R%2B%2BcaGEmcMT6de1u%2FVA%3D\"}]}"},{"key":"CF-RAY","value":"9c6a13d27f38a3ba-IAD"}],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":"{\n    \"customerId\": \"691afbc6fd96d34a8113a34d\",\n    \"merchantCustomerId\": \"rahultestcustomer1@paybomb.tech\",\n    \"fullName\": \"Rahul Agarwal\",\n    \"emailId\": \"rahul+26@paybomb.tech\",\n    \"dateOfBirth\": \"1994-06-03\",\n    \"phoneNo\": \"+91 797639082\",\n    \"brandID\": \"1d666074-39be-4b90-aec9-e9de78fbdcb9\",\n    \"city\": \"Jaipur\",\n    \"zipCode\": \"302018\",\n    \"address\": \"House Number 53, Vaishali Nagar, Jaipur\",\n    \"country\": \"IN\",\n    \"stateCode\": \"RJ\",\n    \"custRegDate\": \"2023-12-27\",\n    \"successTrans\": 0,\n    \"createdOn\": 1763376070,\n    \"lastUpdated\": 0,\n    \"lastActivity\": 1763376070,\n    \"extraParam\": {\n        \"param1\": \"value1\",\n        \"param2\": \"value2\",\n        \"param3\": \"value3\",\n        \"param4\": \"value4\"\n    }\n}"}],"_postman_id":"102ab40d-12be-4a0a-beca-628f365696ce"},{"name":"Create Session (CIT)","id":"adb15c64-4597-42aa-9e37-7f7b6ec6cc96","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer Token","type":"text"},{"key":"BrandId","value":"brand_id_value","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"customerId\": \"685f870cf3435a2d5b35ee08\", // mandatory\n    \"currency\": \"EUR\",\n    \"products\": [\n        {\n            \"name\": \"Product1\",\n            \"price\": \"10\"\n        },\n        {\n            \"name\": \"Product2\",\n            \"price\": \"10\"\n        }\n    ],\n    \"totalAmount\": \"21\", // optional, but if present have precedence over sum of prices.\n    \"paymentMethod\": \"VISA\", //optional\n    \"success_redirect\": \"https://merchant.com/success\",\n    \"pending_redirect\": \"https://merchant.com/pending\",\n    \"failure_redirect\": \"https://merchant.com/failure\",\n    \"success_callback\": \"https://merchant.com/webhook/success\",\n    \"failure_callback\": \"https://merchant.com/webhook/failure\",\n    \"payment_type\": \"mandate\",\n    \"mandate\": {\n        \"mandate_max_amount\": \"5000\", // the mandated amount should be less than or equal to this amount.\n        \"amount_variability\": \"Fixed\",\n        \"start_date\": \"1598965200\", // epoch timestamp or UNIX timestamp\n        \"end_date\": \"1914141600\", // epoch timestamp or UNIX timestamp\n        \"frequency\": \"MONTHLY\",\n        \"rule\": \"on\",\n        \"value\": 1\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.paybomb.net/api/v1/createSession","description":"<p><strong>OVERIEW</strong></p>\n<p>The <code>createSession</code> API is designed to initiate a payment session for a customer after their profile has been created via the <strong>createCustomer</strong> API. The session is automatically generated at the backend on the merchant’s checkout URL. This session allows the customer to continue with their transaction without having to manually interact with the session URL, and ensures the session remains active until the payment is completed or the session expires.</p>\n<p>This API improves the user experience by reducing transaction failures and enhancing the overall payment process, thus reducing transaction churn rates.</p>\n<h3 id=\"mandatory-parameters\">Mandatory 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>Example</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>customerId</td>\n<td>String</td>\n<td>The unique ID of the customer (generated from createCustomer).</td>\n<td>6731a609b6bb5a43ad66c4a6</td>\n</tr>\n</tbody>\n</table>\n</div><p>To register a mandate, pass mandate related parameters in the Create Session API to create a mandate registration purchase. Post transaction completion, use Get Status API and Webhooks to capture mandate registration details.</p>\n<h3 id=\"additional-parameters-for-this-usecase\">Additional <strong>parameters for this usecase:</strong></h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Notes</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>payment_type</td>\n<td>Mandatory.  <br />To be passed as \"mandate\".</td>\n</tr>\n<tr>\n<td>mandate</td>\n<td>Mandatory.  <br />This object is mandatory for mandate flow</td>\n</tr>\n<tr>\n<td>mandate.mandate_max_amount</td>\n<td>Optional  <br />Maximum amount for a mandate.</td>\n</tr>\n<tr>\n<td>mandate.amount_variability</td>\n<td>Optional  <br />Specifies whether the amount is fixed or variable for each recurrence.  <br />  <br />Possible values: Fixed or Variable</td>\n</tr>\n<tr>\n<td>mandate.start_date</td>\n<td>Mandatory  <br />Specifies the time when the mandate will start.</td>\n</tr>\n<tr>\n<td>mandate.end_date</td>\n<td>Mandatory  <br />Specifies the time when the mandate will end.</td>\n</tr>\n<tr>\n<td>mandate.frequency</td>\n<td>Mandatory  <br />Defines the frequency of mandate execution, how often a customer should be charged.  <br />  <br />Possible Values:  <br /><strong>ONETIME</strong>: This is for a one-time mandate. The customer provides authorisation to debit their account a single time for a specific amount.  <br />  <br /><strong>DAILY</strong>: Recurring mandate. The customer provides authorisation to debit their account daily for a specific amount.  <br />  <br /><strong>WEEKLY</strong>: Recurring mandate. Authorisation given by a customer to debit their account weekly once for a specified amount.  <br />  <br /><strong>FORTNIGHTLY</strong>: Recurring mandate. The customer provides authorisation to debit their account fortnightly for a specific amount.  <br />  <br /><strong>MONTHLY</strong>: Recurring mandate. The customer provides authorisation to debit their account monthly for a specific amount.  <br />  <br /><strong>BIMONTHLY</strong>: Recurring mandate. The customer provides authorisation to debit their account bimonthly for a specific amount.  <br />  <br /><strong>QUARTERLY</strong>: Recurring mandate. The customer provides authorisation to debit their account quarterly for a specific amount.  <br />  <br /><strong>HALFYEARLY</strong>: Recurring mandate. The customer provides authorisation to debit their account once in every 6 months for a specific amount.  <br />  <br /><strong>YEARLY</strong>: Recurring mandate. The customer provides authorisation to debit their account once a year for a specific amount.  <br />  <br /><strong>ASPRESENTED</strong>: For cases where the scheduling is handled by the merchant. The customer provides authorization to debit their account whenever there is an execution request.</td>\n</tr>\n<tr>\n<td>mandate.rule</td>\n<td>Optional.  <br />Indicates the recurrence rule of the mandate. This rule is not required for onetime, daily, and aspresented recurrence patterns.  <br />Possible values: on/before/after  <br />By Default: on</td>\n</tr>\n<tr>\n<td>mandate.value</td>\n<td>Conditional.  <br />The recurrence Value of the mandate.  <br />It is not required for ONETIME, DAILY and ASPRESENTED frequencies.  <br />  <br />Possible values:  <br />For WEEKLY: The value should be 1-Monday to 7-Sunday.  <br />For MONTHLY, BIMONTHLY, QUARTERLY, HALFYEARLY or YEARLY: The value should be between 1 to 30/31 days.  <br />  <br />By Default: The value will be treated as 1.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"usage-flow\"><strong>Usage Flow</strong></h3>\n<ol>\n<li><p><strong>Customer completes the</strong> <strong><code>createCustomer</code></strong> <strong>API</strong>: Once the customer is created via the <code>createCustomer</code> API, the merchant proceeds to call the <code>createSession</code> API to generate a session.</p>\n</li>\n<li><p><strong>Merchant sends</strong> <strong><code>createSession</code></strong> <strong>request</strong>: The merchant sends a <code>POST</code> request to the <code>createSession</code> API with the customer’s <code>customerId</code> and the merchant’s <code>brandId</code>.</p>\n</li>\n<li><p><strong>Session created automatically on the checkout URL</strong>: Paybomb creates the session and associates it with the merchant’s checkout page. This session remains active on the backend, allowing the customer to continue the payment process without interruption.</p>\n</li>\n<li><p><strong>Customer proceeds to checkout</strong>: The customer is redirected to the checkout page as part of the merchant's payment flow, where the session is automatically validated. The session remains active for a set period, allowing the customer to complete the payment without needing to manually interact with the session URL.</p>\n</li>\n<li><p><strong>Session Expiry</strong>: The session expires after the set expiration time (<code>expiryOn</code>), ensuring the payment process is completed within the defined window. Default is 15 mins from the creation time.</p>\n</li>\n</ol>\n<hr />\n<h3 id=\"benefits\"><strong>Benefits</strong></h3>\n<ul>\n<li><p><strong>Seamless Checkout</strong>: The session URL is automatically generated and active at the backend, ensuring a smoother and uninterrupted customer experience.</p>\n</li>\n<li><p><strong>Reduced Transaction Failures</strong>: By ensuring the session remains active during the payment process, the chances of transaction failures due to session timeouts are minimized.</p>\n</li>\n<li><p><strong>Improved User Experience</strong>: The customer does not need to click on a session URL or navigate away from the page, leading to faster and more secure payment processing.</p>\n</li>\n</ul>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"a1593e51-d80d-40c4-9c2c-31943fe87354","id":"a1593e51-d80d-40c4-9c2c-31943fe87354","name":"Recurring Payments","type":"folder"}},"urlObject":{"protocol":"https","path":["api","v1","createSession"],"host":["api","paybomb","net"],"query":[],"variable":[]}},"response":[{"id":"f9827bf3-6740-4bfd-b528-873c5e31c32a","name":"Success","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer Token","type":"text"},{"key":"BrandId","value":"brand_id_value","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"customerId\": \"685f870cf3435a2d5b35ee08\", // mandatory\n    \"currency\": \"EUR\",\n    \"products\": [\n        {\n            \"name\": \"Product1\",\n            \"price\": \"10\"\n        },\n        {\n            \"name\": \"Product2\",\n            \"price\": \"10\"\n        }\n    ],\n    \"totalAmount\": \"21\", // optional, but if present have precedence over sum of prices.\n    \"paymentMethod\": \"VISA\", //optional\n    \"success_redirect\": \"https://merchant.com/success\",\n    \"pending_redirect\": \"https://merchant.com/pending\",\n    \"failure_redirect\": \"https://merchant.com/failure\",\n    \"success_callback\": \"https://merchant.com/webhook/success\",\n    \"failure_callback\": \"https://merchant.com/webhook/failure\",\n    \"payment_type\": \"mandate\",\n    \"mandate\": {\n        \"mandate_max_amount\": \"5000\", // the mandated amount should be less than or equal to this amount.\n        \"amount_variability\": \"Fixed\",\n        \"start_date\": \"1598965200\", // epoch timestamp or UNIX timestamp\n        \"end_date\": \"1914141600\", // epoch timestamp or UNIX timestamp\n        \"frequency\": \"MONTHLY\",\n        \"rule\": \"on\",\n        \"value\": 1\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://api.paybomb.net/api/v1/createSession"},"status":"OK","code":200,"_postman_previewlanguage":"Text","header":[{"key":"Date","value":"Sat, 31 Jan 2026 15:03:03 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"Nel","value":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}"},{"key":"X-Frame-Options","value":"ALLOW-FROM *"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"x-session-id","value":"a1b350a8-3571-4d8d-bc24-d101d22cd00a"},{"key":"Vary","value":"Origin"},{"key":"Vary","value":"Access-Control-Request-Method"},{"key":"Vary","value":"Access-Control-Request-Headers"},{"key":"Server","value":"cloudflare"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"0"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 f50e53e9e947bca4dadaaf68ff4c7ea4.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"IAD61-P10"},{"key":"X-Amz-Cf-Id","value":"PPcszsJpkuNycxcxWExDrgtmzycS3Ty-qSugN-xvzxN5XDNbUuYX4A=="},{"key":"cf-cache-status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=rZYK3Hg4zn%2FCuotFLtqHtD2%2F1oVqT7cNmz67YbXBCtsgOhig8X7SPRj8n%2BH9ifhPdt2TF5yERePKHIScEDWDp3BYw9aY1WM%2FmECM6XWiUQw%3D\"}]}"},{"key":"CF-RAY","value":"9c6a17f2cb21d64b-IAD"}],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":"{\n    \"sessionUrl\": \"https://app.paybomb.tech/api/v1/session/685bdefb9a1a8f16b3c4489c/\",\n    \"brandId\": \"<UUID>\",\n    \"customerId\": \"685bdd529a1a8f16b3c445a4\",\n    \"sessionId\": \"685cc8515e3af922dd0e8c31\",\n    \"expiryOn\": 1750852223,\n    \"createdOn\": 1750851323,\n    \"expiry_in_mins\": \"86400\"\n}"}],"_postman_id":"adb15c64-4597-42aa-9e37-7f7b6ec6cc96"},{"name":"Create Purchase (CIT)","id":"295339cd-b2b9-4ee9-9d70-dd72abb47656","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer Token","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"client\": {\n        \"email\": \"rahul@gmail.com\",\n        \"country\": \"GB\",\n        \"city\": \"London\",\n        \"stateCode\": \"LO\",\n        \"street_address\": \"Flat 61 Priory Court Romford RM7 0FY\",\n        \"zip_code\": \"234567\",\n        \"full_name\": \"Rahul Agarwal\",\n        \"phone\": \"+44 07932665877\"\n    },\n    \"purchase\": {\n        \"currency\": \"AED\",\n        \"products\": [\n            {\n                \"name\": \"product name\",\n                \"price\": \"1\"\n            }\n        ]\n    },\n    \"merchantRef\": \"d9db7ec0-f94c-4a9d-8883-54c19c222d81\", // optional\n    \"paymentMethod\": \"MASTER\",\n    \"brand_id\": \"59c5ed48-caf9-464a-ba54-26e1e02bc1bc\",\n    \"payment_type\": \"mandate\",\n    \"mandate\": {\n        \"mandate_max_amount\": \"5000\",\n        \"amount_variability\": \"Fixed\",\n        \"start_date\": \"1598965200\",\n        \"end_date\": \"1914141600\",\n        \"frequency\": \"MONTHLY\",\n        \"rule\": \"on\",\n        \"value\": 1\n    },\n    \"success_redirect\": \"https://merchant.com/success\",\n    \"pending_redirect\": \"https://merchant.com/pending\",\n    \"failure_redirect\": \"https://merchant.com/failure\",\n    \"success_callback\": \"https://merchant.com/webhook/success\",\n    \"failure_callback\": \"https://merchant.com/webhook/failure\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.paybomb.net/api/v1/purchases","description":"<p><strong>OVERIEW</strong></p>\n<p>The <code>create Purchase</code> API is designed to initiate a payment for a merchant who doesn't want to use Paybomb's cashier and wants to keep everything S2S.</p>\n<p>The merchant doesn't need to create a customer in this case and directly needs to call the purchase API and then call the S2S API after that.</p>\n<h3 id=\"additional-parameters-for-this-usecase\">Additional <strong>parameters for this usecase:</strong></h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Notes</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>payment_type</td>\n<td>Mandatory.  <br />To be passed as \"mandate\".</td>\n</tr>\n<tr>\n<td>paymentMethod</td>\n<td>Mandatory.  <br />Example: MASTER, VISA</td>\n</tr>\n<tr>\n<td>brand_id</td>\n<td>Your brand id.</td>\n</tr>\n<tr>\n<td>mandate</td>\n<td>Mandatory.  <br />This object is mandatory for mandate flow</td>\n</tr>\n<tr>\n<td>mandate.mandate_max_amount</td>\n<td>Optional  <br />Maximum amount for a mandate.</td>\n</tr>\n<tr>\n<td>mandate.amount_variability</td>\n<td>Optional  <br />Specifies whether the amount is fixed or variable for each recurrence.  <br />  <br />Possible values: Fixed or Variable</td>\n</tr>\n<tr>\n<td>mandate.start_date</td>\n<td>Mandatory  <br />Specifies the time when the mandate will start.</td>\n</tr>\n<tr>\n<td>mandate.end_date</td>\n<td>Mandatory  <br />Specifies the time when the mandate will end.</td>\n</tr>\n<tr>\n<td>mandate.frequency</td>\n<td>Mandatory  <br />Defines the frequency of mandate execution, how often a customer should be charged.  <br />  <br />Possible Values:  <br /><strong>ONETIME</strong>: This is for a one-time mandate. The customer provides authorisation to debit their account a single time for a specific amount.  <br />  <br /><strong>DAILY</strong>: Recurring mandate. The customer provides authorisation to debit their account daily for a specific amount.  <br />  <br /><strong>WEEKLY</strong>: Recurring mandate. Authorisation given by a customer to debit their account weekly once for a specified amount.  <br />  <br /><strong>FORTNIGHTLY</strong>: Recurring mandate. The customer provides authorisation to debit their account fortnightly for a specific amount.  <br />  <br /><strong>MONTHLY</strong>: Recurring mandate. The customer provides authorisation to debit their account monthly for a specific amount.  <br />  <br /><strong>BIMONTHLY</strong>: Recurring mandate. The customer provides authorisation to debit their account bimonthly for a specific amount.  <br />  <br /><strong>QUARTERLY</strong>: Recurring mandate. The customer provides authorisation to debit their account quarterly for a specific amount.  <br />  <br /><strong>HALFYEARLY</strong>: Recurring mandate. The customer provides authorisation to debit their account once in every 6 months for a specific amount.  <br />  <br /><strong>YEARLY</strong>: Recurring mandate. The customer provides authorisation to debit their account once a year for a specific amount.  <br />  <br /><strong>ASPRESENTED</strong>: For cases where the scheduling is handled by the merchant. The customer provides authorization to debit their account whenever there is an execution request.</td>\n</tr>\n<tr>\n<td>mandate.rule</td>\n<td>Optional.  <br />Indicates the recurrence rule of the mandate. This rule is not required for onetime, daily, and aspresented recurrence patterns.  <br />Possible values: on/before/after  <br />By Default: on</td>\n</tr>\n<tr>\n<td>mandate.value</td>\n<td>Conditional.  <br />The recurrence Value of the mandate.  <br />It is not required for ONETIME, DAILY and ASPRESENTED frequencies.  <br />  <br />Possible values:  <br />For WEEKLY: The value should be 1-Monday to 7-Sunday.  <br />For MONTHLY, BIMONTHLY, QUARTERLY, HALFYEARLY or YEARLY: The value should be between 1 to 30/31 days.  <br />  <br />By Default: The value will be treated as 1.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"a1593e51-d80d-40c4-9c2c-31943fe87354","id":"a1593e51-d80d-40c4-9c2c-31943fe87354","name":"Recurring Payments","type":"folder"}},"urlObject":{"protocol":"https","path":["api","v1","purchases"],"host":["api","paybomb","net"],"query":[],"variable":[]}},"response":[{"id":"d7620ad5-dcce-49a2-8cb7-844d1265ac98","name":"Success","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer Token","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"client\": {\n        \"email\": \"rahul@gmail.com\",\n        \"country\": \"GB\",\n        \"city\": \"London\",\n        \"stateCode\": \"LO\",\n        \"street_address\": \"Flat 61 Priory Court Romford RM7 0FY\",\n        \"zip_code\": \"234567\",\n        \"full_name\": \"Rahul Agarwal\",\n        \"phone\": \"+44 07932665877\"\n    },\n    \"purchase\": {\n        \"currency\": \"AED\",\n        \"products\": [\n            {\n                \"name\": \"product name\",\n                \"price\": \"1\"\n            }\n        ]\n    },\n    \"merchantRef\": \"d9db7ec0-f94c-4a9d-8883-54c19c222d81\", // optional\n    \"paymentMethod\": \"MASTER\",\n    \"brand_id\": \"59c5ed48-caf9-464a-ba54-26e1e02bc1bc\",\n    \"payment_type\": \"mandate\",\n    \"mandate\": {\n        \"mandate_max_amount\": \"5000\",\n        \"amount_variability\": \"Fixed\",\n        \"start_date\": \"1598965200\",\n        \"end_date\": \"1914141600\",\n        \"frequency\": \"MONTHLY\",\n        \"rule\": \"on\",\n        \"value\": 1\n    },\n    \"success_redirect\": \"https://merchant.com/success\",\n    \"pending_redirect\": \"https://merchant.com/pending\",\n    \"failure_redirect\": \"https://merchant.com/failure\",\n    \"success_callback\": \"https://merchant.com/webhook/success\",\n    \"failure_callback\": \"https://merchant.com/webhook/failure\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.paybomb.net/api/v1/purchases"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"Text","header":[{"key":"Date","value":"Mon, 30 Mar 2026 12:23:05 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"Nel","value":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}"},{"key":"X-Frame-Options","value":"ALLOW-FROM *"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"x-session-id","value":"668295f8-5770-4492-8318-01e2d1c09664"},{"key":"Vary","value":"Origin"},{"key":"Vary","value":"Access-Control-Request-Method"},{"key":"Vary","value":"Access-Control-Request-Headers"},{"key":"Server","value":"cloudflare"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"0"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 b4011ac432e4f034161d5cccc8a4ac80.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"IAD61-P10"},{"key":"X-Amz-Cf-Id","value":"46KSjvCpG3Uv-3pzVOVedkJkacP2LZAI0m9ByboJ-rzLxQkfNNycJA=="},{"key":"cf-cache-status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=1p%2FF34n2kiKpiE2WnCntzJPGKU28mcMx4pIFZ9F6UFZqmnoSxQEqZQ44WCu6SsOg5eYfqPqYGdhXxgBbuVLNwP5Xyc2OqoL1lTauqUylCkCPuOXJ1VRrvygGOmX9Yslw6BqJ\"}]}"},{"key":"CF-RAY","value":"9e471560fd16d6d5-IAD"}],"cookie":[],"responseTime":null,"body":"{\n    \"purchaseId\": \"6905c387faca6576ebf01528\",\n    \"client\": {\n        \"customerId\": \"NA\",\n        \"email\": \"rahul@gmail.com\",\n        \"country\": \"GB\",\n        \"city\": \"London\",\n        \"stateCode\": \"LO\",\n        \"street_address\": \"Flat 61 Priory Court Romford RM7 0FY\",\n        \"zip_code\": \"234567\",\n        \"full_name\": \"Rahul Agarwal\",\n        \"phone\": \"+44 07932665877\"\n        \"cc\": [],\n        \"bcc\": []\n    },\n    \"updated_on\": 1761985415,\n    \"type\": \"purchase\",\n    \"paymentMethod\": \"MASTER\",\n    \"amountUnit\": \"MAJOR\",\n    \"errorMsg\": \"\",\n    \"errorCode\": \"NA\",\n    \"redirectType\": \"POST\",\n    \"force_recurring\": false,\n    \"created_on\": 1761985415,\n    \"merchantRef\": \"6905c387faca6576ebf01528\",\n    \"merchantName\": \"rahul_test\",\n    \"merchantType\": \"MERCHANT\",\n    \"purchase\": {\n        \"currency\": \"AED\",\n        \"products\": [\n            {\n                \"name\": \"product name\",\n                \"quantity\": 1.0,\n                \"price\": 1.0,\n                \"discount\": 0,\n                \"tax_percent\": \"0.00\"\n            }\n        ],\n        \"total\": 1.0,\n        \"requestAmount\": 1.0,\n        \"language\": \"en\",\n        \"notes\": \"\",\n        \"debt\": 0,\n        \"total_formatted\": 1.0,\n        \"taxAmount\": 0.0,\n        \"taxPercent\": 0.0,\n        \"request_client_details\": [],\n        \"email_message\": \"\"\n    },\n    \"issuer_details\": {\n        \"website\": \"\",\n        \"legal_street_address\": \"\",\n        \"legal_country\": \"\",\n        \"legal_city\": \"\",\n        \"legal_zip_code\": \"\",\n        \"bank_accounts\": [\n            {}\n        ],\n        \"legal_name\": \"Testing\",\n        \"brand_name\": \"Testing\",\n        \"registration_number\": \"\",\n        \"tax_number\": \"\"\n    },\n    \"transaction_data\": {\n        \"payment_method\": \"\",\n        \"flow\": \"payform\",\n        \"extra\": {},\n        \"country\": \"\",\n        \"attempts\": []\n    },\n    \"status\": \"CREATED\",\n    \"payment_type\": \"mandate\",\n    \"mandate\": {\n        \"mandate_id\": \"6905c387faca6576ebf01528\",\n        \"status\": \"CREATED\",\n        \"amount_variability\": \"Fixed\",\n        \"mandate_max_amount\": \"5000\",\n        \"start_date\": \"1598965200\",\n        \"end_date\": \"1914141600\",\n        \"frequency\": \"MONTHLY\",\n        \"rule\": \"on\",\n        \"value\": 1\n    },\n    \"status_history\": [\n        {\n            \"status\": \"created\",\n            \"timestamp\": 1761985415\n        }\n    ],\n    \"is_test\": false,\n    \"brand_id\": \"59c5ed48-caf9-464a-ba54-26e1e02bc1bc\",\n    \"send_receipt\": false,\n    \"is_recurring_token\": false,\n    \"skip_capture\": false,\n    \"reference_generated\": \"PS236\",\n    \"issued\": \"2025-11-01\",\n    \"due\": 1761985415,\n    \"refund_upto\": 0,\n    \"cc_descriptor\": \"\",\n    \"fraudScore\": \"NA\",\n    \"trustScore\": \"NA\",\n    \"paidOn\": 0,\n    \"receivedAmt\": 0.0,\n    \"taxAmount\": 0.0,\n    \"surcharge\": 0.0,\n    \"surchargeType\": \"\",\n    \"sessionId\": \"\",\n    \"refund_availability\": \"NONE\",\n    \"refundable_amount\": 0.0,\n    \"success_redirect\": \"https://merchant.com/success\",\n    \"pending_redirect\": \"https://merchant.com/pending\",\n    \"failure_redirect\": \"https://merchant.com/failure\",\n    \"success_callback\": \"https://merchant.com/webhook/success\",\n    \"failure_callback\": \"https://merchant.com/webhook/failure\",\n    \"platform\": \"API\",\n    \"created_from_ip\": \"183.83.53.16, 172.71.172.187, 130.176.161.204\",\n    \"checkout_url\": \"https://api.choicepay.ca/payments/1f1d15ebf4f4adcfce479f6220757e30/\",\n    \"direct_post_url\": \"https://api.choicepay.ca/api/v1/p/6905c387faca6576ebf01528/\",\n    \"payoutProcess\": false\n}"}],"_postman_id":"295339cd-b2b9-4ee9-9d70-dd72abb47656"},{"name":"S2S API","id":"651f791e-99bb-4390-94a3-bb3d43c5a0fc","protocolProfileBehavior":{"disableUrlEncoding":false,"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"cardholder_name\": \"dk\",\r\n    \"card_number\": \"4111111111111111\",\r\n    \"expires\": \"10/23\",\r\n    \"cvc\": \"345\",\r\n    \"remember_card\": \"on\",\r\n    \"remote_ip\": \"157.38.242.7\",\r\n    \"user_agent\": \"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36\",\r\n    \"accept_header\": \"text/html\",\r\n    \"language\": \"en-US\",\r\n    \"java_enabled\": false,\r\n    \"javascript_enabled\": true,\r\n    \"color_depth\": 24,\r\n    \"utc_offset\": 0,\r\n    \"screen_width\": 1920,\r\n    \"screen_height\": 1080\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/p/64bff4fff63e36669499e9c8/?s2s=true","description":"<p>This API would be the 2nd in sequence to call if the call to <code>/purchases/</code> was successful in step 1. and you want to do the transaction via Server-to-Server mode.</p>\n<p>The request body would contain the details of the card that's to be transacted upon.</p>\n<h3 id=\"mandatory-parameters-in-request-body\"><strong>Mandatory parameters in request body:</strong></h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th><strong>Notes</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>remote_ip</td>\n<td>IP address of the customer’s device used for transaction. Helps in fraud checks and risk scoring. Ex- 157.38.242.7</td>\n</tr>\n<tr>\n<td>user_agent</td>\n<td>Full browser and operating system details captured from HTTP header. EX- Chrome/5.0 (X11; Linux x86_64)</td>\n</tr>\n<tr>\n<td>accept_header</td>\n<td>Browser’s accepted content types (from HTTP header). Used for validating request origin and device info. EX- text/html</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"essential-parameters-in-request-body\"><strong>Essential parameters in request body:</strong></h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th><strong>Notes</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>cardholder_name</td>\n<td>Name of the cardholder</td>\n</tr>\n<tr>\n<td>card_number</td>\n<td>The card numbers Must be 10-20 characters.</td>\n</tr>\n<tr>\n<td>expires</td>\n<td>must be greater than the current month/year.</td>\n</tr>\n<tr>\n<td>cvc</td>\n<td>3 or 4 digit</td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>Other optional parameters in request body:</strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th><strong>Notes</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>language</td>\n<td>Preferred language of the user’s browser . EX - en-US</td>\n</tr>\n<tr>\n<td>java_enabled</td>\n<td>Indicates if Java is enabled in the browser. Helps PSPs in device profiling. Ex- true/false</td>\n</tr>\n<tr>\n<td>javascript_enabled</td>\n<td>Indicates if JavaScript is enabled in the client browser. Used for 3DS or risk-based checks. Ex- true</td>\n</tr>\n<tr>\n<td>color_depth</td>\n<td>Bit depth of the display screen. Ex- 24</td>\n</tr>\n<tr>\n<td>utc_offset</td>\n<td>Difference in minutes between local time and UTC. Used for location and timezone checks. Ex- 330</td>\n</tr>\n<tr>\n<td>screen_width</td>\n<td>Width of the device screen in pixels. Used in device profiling. Ex- 1920</td>\n</tr>\n<tr>\n<td>screen_height</td>\n<td>Height of the device screen in pixels. Ex- 1080</td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>Successful Response</strong></p>\n<p>If all the details are correct you'll get a 202 response with staus as Pending</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"status\": \"pending\",\n    \"callback_url\": \"https://app.paybomb.tech/payment/63bd0bf80fb42a076e8a4dd1/\",\n    \"method\": \"GET\"\n}\n\n</code></pre>\n<p>If the response code is 202, after receiving the response body, direct the customer to the callback_url provided in the response.</p>\n<p><strong>Errors</strong></p>\n<p>If there are any errors then it'll be in the format of :</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"message\": \"descriptive error message\",\n    \"code\": \"error_code\"\n}\n\n</code></pre>\n<p>Please see the Status Code section for further details.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Error Messages</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Client Ip could not be matched with Merchant Ip</td>\n</tr>\n<tr>\n<td>Invalid Card Information</td>\n</tr>\n<tr>\n<td>Card is Blocked</td>\n</tr>\n<tr>\n<td>Different Type of key used to create purchase and payment</td>\n</tr>\n<tr>\n<td>You charges setting is incomplete .Plese Contact to adminstrartor.</td>\n</tr>\n<tr>\n<td>Allowed Attempt for this Transaction has been consumed</td>\n</tr>\n<tr>\n<td>Invalid Card Expiry(Valid Format:MM/YY) must be greator than current month/year</td>\n</tr>\n<tr>\n<td>Customer profile is Blocked</td>\n</tr>\n<tr>\n<td>Customer/Card not allowed for transaction</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"a1593e51-d80d-40c4-9c2c-31943fe87354","id":"a1593e51-d80d-40c4-9c2c-31943fe87354","name":"Recurring Payments","type":"folder"}},"urlObject":{"path":["p","64bff4fff63e36669499e9c8",""],"host":["https://app.paybomb.tech/api/v1"],"query":[{"key":"s2s","value":"true"}],"variable":[]}},"response":[{"id":"cb1a7218-d392-42a9-ac3e-39d7e9e4f98a","name":"Success","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"cardholder_name\": \"dk\",\r\n    \"card_number\": \"4111111111111111\",\r\n    \"expires\": \"10/23\",\r\n    \"cvc\": \"345\",\r\n    \"remember_card\": \"on\",\r\n    \"remote_ip\": \"157.38.242.7\",\r\n    \"user_agent\": \"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36\",\r\n    \"accept_header\": \"text/html\",\r\n    \"language\": \"en-US\",\r\n    \"java_enabled\": false,\r\n    \"javascript_enabled\": true,\r\n    \"color_depth\": 24,\r\n    \"utc_offset\": 0,\r\n    \"screen_width\": 1920,\r\n    \"screen_height\": 1080\r\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://api.paybomb.net/api/v1/p/64bff4fff63e36669499e9c8/?s2s=true","protocol":"https","host":["api","paybomb","net"],"path":["api","v1","p","64bff4fff63e36669499e9c8",""],"query":[{"key":"s2s","value":"true"}]}},"status":"Accepted","code":202,"_postman_previewlanguage":"Text","header":[{"key":"Date","value":"Mon, 30 Mar 2026 12:29:20 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"Nel","value":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}"},{"key":"X-Frame-Options","value":"ALLOW-FROM *"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"x-session-id","value":"013dfd43-0689-4d6b-a797-38281465a753"},{"key":"Vary","value":"Origin"},{"key":"Vary","value":"Access-Control-Request-Method"},{"key":"Vary","value":"Access-Control-Request-Headers"},{"key":"Server","value":"cloudflare"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"0"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 3b66cea026f27925ba048cc96a0885ca.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"IAD61-P10"},{"key":"X-Amz-Cf-Id","value":"SWosGrWkPMrZoTyRfLd6N01fBb57k60RtzFzD-r38XQXmfTQEW_SRQ=="},{"key":"cf-cache-status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=qC4PItJ0vJPndQ4Ni%2F0rS%2BPlrlTkj9%2F28whoJdWsDG4oYZpOnmcmYgstZyXlRLs5CC6XI1kBR7nuEUQ6t4NoE1tnrhM8iv1IV%2BvSYTxq3AryDLbD0zZlxLVKj9jllGVm3RVN\"}]}"},{"key":"CF-RAY","value":"9e471e8bcf88824e-IAD"}],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":"{\n    \"status\": \"pending\",\n    \"callback_url\": \"http://18.214.100.20/api/v1/payment/64b034ecc6dccf7d329d9eb3/\",\n    \"method\": \"GET\"\n}"}],"_postman_id":"651f791e-99bb-4390-94a3-bb3d43c5a0fc"},{"name":"Get Mandate","id":"28c8d821-bb04-4b02-9cf8-2e03602408e1","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"},{"key":"BrandId","value":"your-brand-value","type":"text"}],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"https://api.paybomb.net/api/v1/mandate/{mandate_id or session_id}","description":"<p>This endpoint will be used to get all the details of a particular mandate. You can search for a particular mandate id or for a particular session id.</p>\n<h3 id=\"response-parameters\">Response <strong>parameters:</strong></h3>\n<ol>\n<li><p><strong>totalDeductedAmount</strong><br /> This is the total amount which is deducted from the user's account.</p>\n</li>\n<li><p><strong>recurringMandateIds</strong><br /> This object returns a list of all the MIT transactions done for the respective mandate.</p>\n</li>\n<li><p><strong>nextMandateDate</strong><br /> This is the date when the next recurring payment will happen.</p>\n</li>\n</ol>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"a1593e51-d80d-40c4-9c2c-31943fe87354","id":"a1593e51-d80d-40c4-9c2c-31943fe87354","name":"Recurring Payments","type":"folder"}},"urlObject":{"protocol":"https","path":["api","v1","mandate","{mandate_id or session_id}"],"host":["api","paybomb","net"],"query":[],"variable":[]}},"response":[{"id":"266c5b69-4b31-4bb4-b45b-27c4c450c49b","name":"Success","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"},{"key":"BrandId","value":"your-brand-value","type":"text"}],"url":"https://api.paybomb.net/api/v1/mandate/696bd471b0c24568ade46466"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"Text","header":[{"key":"Date","value":"Sun, 01 Feb 2026 06:56:32 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"Nel","value":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}"},{"key":"X-Frame-Options","value":"ALLOW-FROM *"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"x-session-id","value":"b8dc3fe9-c56b-4718-a6e8-b4044e69120b"},{"key":"Vary","value":"Origin"},{"key":"Vary","value":"Access-Control-Request-Method"},{"key":"Vary","value":"Access-Control-Request-Headers"},{"key":"Server","value":"cloudflare"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"0"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 05a63efd5ebb043211ccf075f3a8aa68.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"IAD61-P10"},{"key":"X-Amz-Cf-Id","value":"UPvql_nBAvRboQG1BikwIVIHoN_m5uHLEWWErbwD0Lr7fo5x48HpaA=="},{"key":"cf-cache-status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=Tp4EtXNt4DgHuaJ2Q9BfPJURiEh05tLCWMtFCu9z05OQ7YEYP1Cf3TATCi0U0OCbQWhfsBnlVUnPsz2DBH5%2FMZIxm8AQy7eBsf%2Fnh1HJP8Q%3D\"}]}"},{"key":"CF-RAY","value":"9c6f8cad4867d6fd-IAD"}],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":"{\n    \"status\": \"ACTIVE\",\n    \"frequency\": \"YEARLY\",\n    \"rule\": \"on\",\n    \"value\": 12,\n    \"totalDeductedAmount\": \"20.00\",\n    \"recurringMandateIds\": [\n        \"6973ad04fa54ee2cf14f438c\",\n        \"697ce750e6446c7babfe4727\"\n    ],\n    \"email\": \"ranigupta89@paybomb.tech\",\n    \"nextMandateDate\": 1799778418,\n    \"customer_id\": \"68dcd9c057c92d789953fec6\",\n    \"mandate_id\": \"696bd471b0c24568ade46466\",\n    \"mandate_max_amount\": 120,\n    \"amount_variability\": \"Variable\",\n    \"start_date\": \"1768674418\",\n    \"end_date\": \"null\",\n    \"pause_start_date\": \"null\",\n    \"pause_end_date\": \"null\",\n    \"session_id\": \"696bd468b0c24568ade4645e\"\n}\n"}],"_postman_id":"28c8d821-bb04-4b02-9cf8-2e03602408e1"},{"name":"Create Purchase (MIT)","id":"fe2dfb41-1529-4cb4-b681-28e7348389dc","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer Token","type":"text"},{"key":"Accept","value":"*/*","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"client\": {\r\n        \"customerId\": \"685f870cf3435a2d5b35ee08\", // mandatory\r\n        \"email\": \"abby.aadeniran@gmail.com\",\r\n        \"phone\": \"+44 07932665877\",\r\n        \"full_name\": \"Navya Jain\",\r\n        \"street_address\": \"Flat 61 Priory Court Romford RM7 0FY\",\r\n        \"country\": \"GB\",\r\n        \"city\": \"London\",\r\n        \"zip_code\": \"234567\",\r\n        \"stateCode\": \"LO\"\r\n    },\r\n    \"purchase\": {\r\n        \"currency\": \"INR\",\r\n        \"products\": [\r\n            {\r\n                \"name\": \"test\",\r\n                \"price\": 100\r\n            }\r\n        ]\r\n    },\r\n    \"merchantRef\": \"test12\", // optional\r\n    \"brand_id\": \"{{merchant_brand_id}}\",\r\n    \"payment_type\": \"recurring\",\r\n    \"mandate_id\": \"6905c387faca6576ebf01528\",\r\n    \"success_callback\": \"https://your.success.callback.com\",\r\n    \"failure_callback\": \"https://your.failure.callback.com\"\r\n}"},"url":"https://api.paybomb.net/api/v1/purchases","description":"<p>After the successful Mandate registration, Merchant will receive a mandate_id from Paybomb that should be stored against a customer at their end.</p>\n<p>If the <strong>merchant handles their own scheduling,</strong> then for the subsequent transactions, the merchant is supposed to pass a combination of customer_id and mandate_id to do a debit. This API will perform a transaction with a PSP based on the mandate_id passed in the request.</p>\n<p>If <strong>Paybomb handles the scheduling for the merchant</strong> on their behalf, then this API is not for them. The MIT transactions will be handled by Paybomb from our side.</p>\n<p>Note:<br />Recurring payments should only be done if the mandate registration has been successful and the mandate is ACTIVE.</p>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"a1593e51-d80d-40c4-9c2c-31943fe87354","id":"a1593e51-d80d-40c4-9c2c-31943fe87354","name":"Recurring Payments","type":"folder"}},"urlObject":{"protocol":"https","path":["api","v1","purchases"],"host":["api","paybomb","net"],"query":[],"variable":[]}},"response":[{"id":"79a05392-0318-43bb-ac4b-ad4fb2dd3322","name":"Success","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer Token","type":"text"},{"key":"Accept","value":"*/*","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"client\": {\r\n        \"customerId\": \"685f870cf3435a2d5b35ee08\", // mandatory\r\n        \"email\": \"abby.aadeniran@gmail.com\",\r\n        \"phone\": \"+44 07932665877\",\r\n        \"full_name\": \"Navya Jain\",\r\n        \"street_address\": \"Flat 61 Priory Court Romford RM7 0FY\",\r\n        \"country\": \"GB\",\r\n        \"city\": \"London\",\r\n        \"zip_code\": \"234567\",\r\n        \"stateCode\": \"LO\"\r\n    },\r\n    \"purchase\": {\r\n        \"currency\": \"INR\",\r\n        \"products\": [\r\n            {\r\n                \"name\": \"test\",\r\n                \"price\": 100\r\n            }\r\n        ]\r\n    },\r\n    \"merchantRef\": \"test12\", // optional\r\n    \"brand_id\": \"{{merchant_brand_id}}\",\r\n    \"payment_type\": \"recurring\",\r\n    \"mandate_id\": \"6905c387faca6576ebf01528\",\r\n    \"success_callback\": \"https://your.success.callback.com\",\r\n    \"failure_callback\": \"https://your.failure.callback.com\"\r\n}"},"url":"https://api.paybomb.net/api/v1/purchases"},"status":"OK","code":200,"_postman_previewlanguage":"Text","header":[{"key":"Date","value":"Sun, 01 Feb 2026 07:33:08 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"Nel","value":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}"},{"key":"X-Frame-Options","value":"ALLOW-FROM *"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"x-session-id","value":"37f1854e-59ef-4553-928a-273030e84769"},{"key":"Vary","value":"Origin"},{"key":"Vary","value":"Access-Control-Request-Method"},{"key":"Vary","value":"Access-Control-Request-Headers"},{"key":"Server","value":"cloudflare"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"0"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 adbd5a952eb287ac84e05fd5fd42328e.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"IAD61-P10"},{"key":"X-Amz-Cf-Id","value":"7AJkDib2VzETAS6vS-ZJxKBYVyLrDSEJQl_Tnle4M6l-IWwqo2asaA=="},{"key":"cf-cache-status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=EtWT1DIhR3ebhY8soSvPlHMZW8ROhPoWtuiPSMSlWz3I2qU3notH7b6tEnFIyl%2B6iQZs2wFrTKESZRcMCfuxDwqNPDAccnSfvR5gjUb7kUs%3D\"}]}"},{"key":"CF-RAY","value":"9c6fc2486bdc311a-IAD"}],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":"{\n    \"purchaseId\": \"6905c387faca6576ebf01528\",\n    \"client\": {\n        \"customerId\": \"NA\",\n        \"email\": \"abby.aadeniran@gmail.com\",\n        \"phone\": \"+44 07932665877\",\n        \"full_name\": \"Navya Jain\",\n        \"street_address\": \"Flat 61 Priory Court Romford RM7 0FY\",\n        \"country\": \"GB\",\n        \"city\": \"London\",\n        \"zip_code\": \"234567\",\n        \"cc\": [],\n        \"bcc\": [],\n        \"stateCode\": \"LO\"\n    },\n    \"updated_on\": 1761985415,\n    \"type\": \"purchase\",\n    \"paymentMethod\": \"MASTER\",\n    \"amountUnit\": \"MAJOR\",\n    \"errorMsg\": \"\",\n    \"errorCode\": \"NA\",\n    \"redirectType\": \"POST\",\n    \"force_recurring\": false,\n    \"created_on\": 1761985415,\n    \"merchantRef\": \"6905c387faca6576ebf01528\",\n    \"merchantName\": \"rahul_test\",\n    \"merchantType\": \"MERCHANT\",\n    \"purchase\": {\n        \"currency\": \"GBP\",\n        \"products\": [\n            {\n                \"name\": \"product name\",\n                \"quantity\": 1.0,\n                \"price\": 10.0,\n                \"discount\": 0,\n                \"tax_percent\": \"0.00\"\n            }\n        ],\n        \"total\": 1.0,\n        \"requestAmount\": 1.0,\n        \"language\": \"en\",\n        \"notes\": \"\",\n        \"debt\": 0,\n        \"total_formatted\": 1.0,\n        \"taxAmount\": 0.0,\n        \"taxPercent\": 0.0,\n        \"request_client_details\": [],\n        \"email_message\": \"\"\n    },\n    \"issuer_details\": {\n        \"website\": \"\",\n        \"legal_street_address\": \"\",\n        \"legal_country\": \"\",\n        \"legal_city\": \"\",\n        \"legal_zip_code\": \"\",\n        \"bank_accounts\": [\n            {}\n        ],\n        \"legal_name\": \"Testing\",\n        \"brand_name\": \"Testing\",\n        \"registration_number\": \"\",\n        \"tax_number\": \"\"\n    },\n    \"transaction_data\": {\n        \"payment_method\": \"\",\n        \"flow\": \"payform\",\n        \"extra\": {},\n        \"country\": \"\",\n        \"attempts\": []\n    },\n    \"status\": \"PAID\",\n    \"payment_type\": \"recurring\",\n    \"mandate\": {\n        \"mandate_id\": \"6905c387faca6576ebf01528\",\n        \"amount_variability\": \"Fixed\",\n        \"status\": \"ACTIVE\",\n        \"mandate_max_amount\": \"5000\",\n        \"start_date\": \"1598965200\",\n        \"end_date\": \"1914141600\",\n        \"frequency\": \"ASPRESENTED\",\n        \"rule\": \"on\",\n        \"value\": 1\n    },\n    \"mandate_id\": \"6905c387faca6576ebf01528\",\n    \"status_history\": [\n        {\n            \"status\": \"paid\",\n            \"timestamp\": 1761985415\n        }\n    ],\n    \"is_test\": false,\n    \"brand_id\": \"59c5ed48-caf9-464a-ba54-26e1e02bc1bc\",\n    \"send_receipt\": false,\n    \"is_recurring_token\": false,\n    \"skip_capture\": false,\n    \"reference_generated\": \"PS236\",\n    \"issued\": \"2025-11-01\",\n    \"due\": 1761985415,\n    \"refund_upto\": 0,\n    \"cc_descriptor\": \"\",\n    \"fraudScore\": \"NA\",\n    \"trustScore\": \"NA\",\n    \"paidOn\": 0,\n    \"receivedAmt\": 0.0,\n    \"taxAmount\": 0.0,\n    \"surcharge\": 0.0,\n    \"surchargeType\": \"\",\n    \"sessionId\": \"\",\n    \"refund_availability\": \"NONE\",\n    \"refundable_amount\": 0.0,\n    \"success_redirect\": \"https://merchant.com/success\",\n    \"pending_redirect\": \"https://merchant.com/pending\",\n    \"failure_redirect\": \"https://merchant.com/failure\",\n    \"success_callback\": \"https://merchant.com/webhook/success\",\n    \"failure_callback\": \"https://merchant.com/webhook/failure\",\n    \"platform\": \"API\",\n    \"created_from_ip\": \"183.83.53.16, 172.71.172.187, 130.176.161.204\",\n    \"checkout_url\": \"https://api.choicepay.ca/payments/1f1d15ebf4f4adcfce479f6220757e30/\",\n    \"direct_post_url\": \"https://api.choicepay.ca/api/v1/p/6905c387faca6576ebf01528/\",\n    \"payoutProcess\": false\n}"}],"_postman_id":"fe2dfb41-1529-4cb4-b681-28e7348389dc"},{"name":"Revoke Mandate","id":"e28d7d32-629e-41a9-9df7-58ee5eb45f58","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json","type":"text"},{"key":"Brandid","value":"your-brand-id","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"mandate_id\": \"685cc8515e3af922dd0e8c31\",\n    \"command\": \"revoke\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.paybomb.net/api/v1/mandate","description":"<p>Required for cases where the Paybomb is handling the scheduling of recurring payments. Use this API to revoke/cancel an ACTIVE mandate.</p>\n<p>Note:<br />Revoking a mandate should be done at the same instance this API is called. The mandate status should be updated to “REVOKED” at the same instant.</p>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"a1593e51-d80d-40c4-9c2c-31943fe87354","id":"a1593e51-d80d-40c4-9c2c-31943fe87354","name":"Recurring Payments","type":"folder"}},"urlObject":{"protocol":"https","path":["api","v1","mandate"],"host":["api","paybomb","net"],"query":[],"variable":[]}},"response":[{"id":"4da35b13-5c26-484e-bba3-8c44e177c937","name":"Success","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json","type":"text"},{"key":"Brandid","value":"your-brand-id","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"mandate_id\": \"685cc8515e3af922dd0e8c31\",\n    \"command\": \"revoke\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.paybomb.net/api/v1/mandate"},"status":"OK","code":200,"_postman_previewlanguage":"Text","header":[{"key":"Date","value":"Sun, 01 Feb 2026 07:35:47 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"Nel","value":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}"},{"key":"X-Frame-Options","value":"ALLOW-FROM *"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"x-session-id","value":"4a8592fc-9fa6-4fbb-9e07-cdcd7edc5e40"},{"key":"Vary","value":"Origin"},{"key":"Vary","value":"Access-Control-Request-Method"},{"key":"Vary","value":"Access-Control-Request-Headers"},{"key":"Server","value":"cloudflare"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"0"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 f89daa99b6a349030b23247a4977cb5e.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"IAD61-P10"},{"key":"X-Amz-Cf-Id","value":"HmEu78FCUGrOzYk6YJdjvLfy0B6-xSVbGbk0Yud_HA3Bg0EgIfBt5A=="},{"key":"cf-cache-status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=oMkGA9vbkd3bDC7Q9cfg5OcebtSE%2FehjdB9%2BKjGMP%2BJEyQIpOYfkAN1qKp5ByOTxfmLL6i9TB6nS8bdIIYKhIw0xHog50DJhUAPxJMEFv2M%3D\"}]}"},{"key":"CF-RAY","value":"9c6fc62b3b071e2d-IAD"}],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":"{\n    \"mandateId\": \"6943aabe3f5c35b0f7849768\",\n    \"message\": \"Mandate revoked successfully\",\n    \"revokeDate\": 1769857766,\n    \"status\": \"REVOKED\"\n}"}],"_postman_id":"e28d7d32-629e-41a9-9df7-58ee5eb45f58"},{"name":"Pause Mandate","id":"1f456a05-d45f-42dd-a14b-7baefe6c838d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json","type":"text"},{"key":"BrandId","value":"your-brand-id","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"mandate_id\": \"685cc8515e3af922dd0e8c31\",\n    \"command\": \"pause\",\n    \"pause_start_date\": \"1761985415\",\n    \"pause_end_date\": \"1761985415\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.paybomb.net/api/v1/mandate","description":"<p>Required for cases where the Paybomb is handling the scheduling of recurring payments. Use this API to pause an ACTIVE mandate.</p>\n<h3 id=\"additional-parameters-for-this-usecase\">Additional <strong>parameters for this usecase:</strong></h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Notes</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>command</td>\n<td>Mandatory.  <br />To be passed as \"pause\".</td>\n</tr>\n<tr>\n<td>mandate_id</td>\n<td>Mandatory.</td>\n</tr>\n<tr>\n<td>pause_start_date</td>\n<td>Optional  <br />Date in UNIX EPOCH timestamp (UTC timezone) format, when the mandate will be paused.  <br />If not passed, Default value will be the current date.</td>\n</tr>\n<tr>\n<td>pause_end_date</td>\n<td>Mandatory  <br />Date in UNIX EPOCH timestamp (UTC timezone) format, when the mandate status will be automatically changed to ACTIVE.</td>\n</tr>\n</tbody>\n</table>\n</div><p>Note:<br />For pausing a mandate you need to keep the exact timestamp in mind.<br />If a recurring payment is scheduled between the pause_start_date and pause_end_date then it will not be executed.</p>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"a1593e51-d80d-40c4-9c2c-31943fe87354","id":"a1593e51-d80d-40c4-9c2c-31943fe87354","name":"Recurring Payments","type":"folder"}},"urlObject":{"protocol":"https","path":["api","v1","mandate"],"host":["api","paybomb","net"],"query":[],"variable":[]}},"response":[{"id":"8796fb7d-2baa-4ae5-b815-721a5e37fbf8","name":"Pause Mandate","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json","type":"text"},{"key":"BrandId","value":"your-brand-id","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"mandate_id\": \"685cc8515e3af922dd0e8c31\",\n    \"command\": \"pause\",\n    \"pause_start_date\": \"1761985415\",\n    \"pause_end_date\": \"1761985415\"\n}","options":{"raw":{"language":"json"}}},"url":"https://api.paybomb.net/api/v1/mandate"},"status":"OK","code":200,"_postman_previewlanguage":"Text","header":[{"key":"Date","value":"Sun, 01 Feb 2026 07:43:17 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"Nel","value":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}"},{"key":"X-Frame-Options","value":"ALLOW-FROM *"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"x-session-id","value":"d58bc371-c0da-450a-acfe-0c3201044a0d"},{"key":"Vary","value":"Origin"},{"key":"Vary","value":"Access-Control-Request-Method"},{"key":"Vary","value":"Access-Control-Request-Headers"},{"key":"Server","value":"cloudflare"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"0"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 1a12f863197f986ec10d35ed76e104f0.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"IAD61-P10"},{"key":"X-Amz-Cf-Id","value":"ywPaVLC1kDeRa4Z9VCMmj4E3hj0lAODhase1DUwkbaCEeCW3c2Y0Bw=="},{"key":"cf-cache-status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=jxNgzPiQ7b3lf84TmsdZvXle8FBgBUNhmJa5W6ZgA0z943LEtK3kWUVHzpO%2B9jLRC7jxqt2Df6QyJBu3anUlhBNLpCn0uxchM1IvQNKx90c%3D\"}]}"},{"key":"CF-RAY","value":"9c6fd1258d901ff2-IAD"}],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":"{\n    \"mandateId\": \"693c053feef6a6b6928b48b0\",\n    \"pauseEndDate\": 1769859769,\n    \"message\": \"Mandate paused configuration done successfully for the selected duration\",\n    \"pauseStartDate\": 1769857969,\n    \"status\": \"PAUSED\"\n}"}],"_postman_id":"1f456a05-d45f-42dd-a14b-7baefe6c838d"},{"name":"List Mandates","id":"dd5c1043-06fa-4406-8358-5be4bbe84957","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"application/json","type":"text"},{"key":"BrandId","value":"your-brand-id","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"https://api.paybomb.net/api/v1/mandate?customerId=696bd627b0c24568ade4675e&email=test@gmail.com","description":"<p>This endpoint will be used to list all the mandates for a particular customer of a merchant.</p>\n<h3 id=\"response-parameters\">Response <strong>parameters:</strong></h3>\n<ol>\n<li><p><strong>totalDeductedAmount</strong><br /> This is the total amount which is deducted from the user's account.</p>\n</li>\n<li><p><strong>recurringMandateIds</strong><br /> This object returns a list of all the MIT transactions done for the respective mandate.</p>\n</li>\n<li><p><strong>nextMandateDate</strong><br /> This is the date when the next recurring payment will happen.</p>\n</li>\n</ol>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"a1593e51-d80d-40c4-9c2c-31943fe87354","id":"a1593e51-d80d-40c4-9c2c-31943fe87354","name":"Recurring Payments","type":"folder"}},"urlObject":{"protocol":"https","path":["api","v1","mandate"],"host":["api","paybomb","net"],"query":[{"key":"customerId","value":"696bd627b0c24568ade4675e"},{"key":"email","value":"test@gmail.com"}],"variable":[]}},"response":[{"id":"71247764-4fb9-4ee1-a00d-92fa6cc72168","name":"Success","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json","type":"text"},{"key":"BrandId","value":"your-brand-id","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"url":{"raw":"https://api.paybomb.net/api/v1/mandate?customerId=696bd627b0c24568ade4675e&email=test@gmail.com","protocol":"https","host":["api","paybomb","net"],"path":["api","v1","mandate"],"query":[{"key":"customerId","value":"696bd627b0c24568ade4675e"},{"key":"email","value":"test@gmail.com"}]}},"status":"OK","code":200,"_postman_previewlanguage":"Text","header":[{"key":"Date","value":"Sun, 01 Feb 2026 07:45:33 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"Nel","value":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}"},{"key":"X-Frame-Options","value":"ALLOW-FROM *"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"x-session-id","value":"f16548e2-fc87-44fc-bbf1-767f2c82af0c"},{"key":"Vary","value":"Origin"},{"key":"Vary","value":"Access-Control-Request-Method"},{"key":"Vary","value":"Access-Control-Request-Headers"},{"key":"Server","value":"cloudflare"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"0"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 9bce423254194c16408d5cf7234126e2.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"IAD61-P10"},{"key":"X-Amz-Cf-Id","value":"ywr-KbYLgcl2CP9ZyFndEJjR7VI6jATRNoLeJen1sLm6hmk4VPBSGw=="},{"key":"cf-cache-status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=SuOGk1BmR%2B6RDq9oMjQI0y4v%2B2wZpehSeXuXxwibUF8%2B%2Fg6CIX9K27%2F1oT205007Yq63%2BR2d2casubErbR9yDAk78NgFsX%2Bd%2FGq2v9VBBGY%3D\"}]}"},{"key":"CF-RAY","value":"9c6fd4788b13c5ce-IAD"}],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":"{\n    \"mandates\": [\n        {\n            \"status\": \"ACTIVE\",\n            \"frequency\": \"WEEKLY\",\n            \"rule\": \"after\",\n            \"value\": 4,\n            \"totalDeductedAmount\": \"10.00\",\n            \"recurringMandateIds\": [\n                \"6973ad04fa54ee2cf14f438c\",\n                \"697ce750e6446c7babfe4727\"\n            ],\n            \"email\": \"test@gmail.com\",\n            \"nextMandateDate\": 1770398106,\n            \"customer_id\": \"696bd627b0c24568ade4675e\",\n            \"mandate_id\": \"696bc39a7bc779fac5201357\",\n            \"mandate_max_amount\": 120,\n            \"amount_variability\": \"Variable\",\n            \"start_date\": \"1768670106\"\n        },\n        {\n            \"status\": \"CREATED\",\n            \"frequency\": \"WEEKLY\",\n            \"rule\": \"on\",\n            \"value\": 6,\n            \"totalDeductedAmount\": \"0\",\n            \"email\": \"test@gmail.com\",\n            \"customer_id\": \"696bd627b0c24568ade4675e\",\n            \"mandate_id\": \"696bd627b0c24568ade4675e\",\n            \"mandate_max_amount\": 120,\n            \"amount_variability\": \"Variable\",\n            \"start_date\": \"1768674855\",\n            \"session_id\": \"\"\n        },\n        {\n            \"status\": \"ACTIVE\",\n            \"frequency\": \"WEEKLY\",\n            \"rule\": \"after\",\n            \"value\": 4,\n            \"totalDeductedAmount\": \"0\",\n            \"email\": \"test@gmail.com\",\n            \"customer_id\": \"696bd627b0c24568ade4675e\",\n            \"mandate_id\": \"69788a5dd1ed27eeb5fb89d6\",\n            \"mandate_max_amount\": 120,\n            \"amount_variability\": \"Variable\",\n            \"start_date\": \"1769507493\",\n            \"session_id\": \"\"\n        },\n        {\n            \"status\": \"ACTIVE\",\n            \"frequency\": \"WEEKLY\",\n            \"rule\": \"after\",\n            \"value\": 4,\n            \"totalDeductedAmount\": \"1000\",\n            \"recurringMandateIds\": [\n                \"6973ad04fa54ee2cf14f438c\",\n                \"697ce750e6446c7babfe4727\"\n            ],\n            \"email\": \"test@gmail.com\",\n            \"customer_id\": \"696bd627b0c24568ade4675e\",\n            \"mandate_id\": \"69788d2f0ea4df4fd4e6eb5b\",\n            \"mandate_max_amount\": 120,\n            \"amount_variability\": \"Variable\",\n            \"start_date\": \"1769508214\",\n            \"session_id\": \"\"\n        },\n        {\n            \"status\": \"FAILED\",\n            \"frequency\": \"WEEKLY\",\n            \"rule\": \"after\",\n            \"value\": 4,\n            \"totalDeductedAmount\": \"0\",\n            \"email\": \"test@gmail.com\",\n            \"customer_id\": \"696bd627b0c24568ade4675e\",\n            \"mandate_id\": \"697b533b34d180d90cfb2f5f\",\n            \"mandate_max_amount\": 120,\n            \"amount_variability\": \"Variable\",\n            \"start_date\": \"1769689915\",\n            \"session_id\": \"\"\n        },\n        {\n            \"status\": \"CREATED\",\n            \"frequency\": \"WEEKLY\",\n            \"rule\": \"after\",\n            \"value\": 4,\n            \"totalDeductedAmount\": \"0\",\n            \"email\": \"test@gmail.com\",\n            \"customer_id\": \"696bd627b0c24568ade4675e\",\n            \"mandate_id\": \"697de0e15d2e562bf8b4552a\",\n            \"mandate_max_amount\": 120,\n            \"amount_variability\": \"Variable\",\n            \"start_date\": \"1769857249\",\n            \"session_id\": \"\"\n        }\n    ]\n}"}],"_postman_id":"dd5c1043-06fa-4406-8358-5be4bbe84957"},{"name":"Get Status","id":"c1d5e07a-1b41-42b7-b410-42f3ce95738b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"url":"https://app.paybomb.tech/api/v1/purchases/{purchaseId}/","description":"<p>This API tells you about all the details of a recurring payment which occurred</p>\n<h3 id=\"mandatory\">Mandatory</h3>\n<p>you need to pass the <code>PurchaseID</code> in the API URL</p>\n<h3 id=\"possible-value-of-status\">Possible Value of Status</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Status</strong></th>\n<th><strong>Notes</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>paid</td>\n<td>Transaction Successful</td>\n</tr>\n<tr>\n<td>expired</td>\n<td>Purchase has Expired.</td>\n</tr>\n<tr>\n<td>error</td>\n<td>Transaction has Failed.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"response-examples\">Response Examples</h3>\n<p>In the response examples you can see instances of both <code>Paid</code> and <code>Error</code> Status purchases.</p>\n<h3 id=\"error-details\">Error Details</h3>\n<p>If there are any issues on the Purchase you can get more details from the <code>transaction_data.attempts.error</code> attribute of the response object</p>\n<h3 id=\"errors\">Errors</h3>\n<p>If there are any errors then it'll be in the format of :</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"message\": \"descriptive error message\",\n    \"code\": \"error_code\"\n}\n\n</code></pre>\n<p>Please see the Status Code section for further details.</p>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"a1593e51-d80d-40c4-9c2c-31943fe87354","id":"a1593e51-d80d-40c4-9c2c-31943fe87354","name":"Recurring Payments","type":"folder"}},"urlObject":{"path":["purchases","{purchaseId}",""],"host":["https://app.paybomb.tech/api/v1"],"query":[],"variable":[]}},"response":[{"id":"dd7910a1-003e-4fb2-9c8f-b292e93a9047","name":"Success","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"url":"https://app.paybomb.tech/api/v1/purchases/{purchaseId}/"},"status":"OK","code":200,"_postman_previewlanguage":"Text","header":[{"key":"Date","value":"Sun, 01 Feb 2026 07:59:35 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"Nel","value":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}"},{"key":"X-Frame-Options","value":"ALLOW-FROM *"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"x-session-id","value":"e222737a-b9e9-4562-94de-5b80b056c180"},{"key":"Vary","value":"Origin"},{"key":"Vary","value":"Access-Control-Request-Method"},{"key":"Vary","value":"Access-Control-Request-Headers"},{"key":"Server","value":"cloudflare"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"0"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 f89daa99b6a349030b23247a4977cb5e.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"IAD61-P10"},{"key":"X-Amz-Cf-Id","value":"eUcDXjdNU1qDjwPQst7oM9Kbi8qYyd8sncr30-6kphukYSEGv-qwUg=="},{"key":"cf-cache-status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=i8qaRQprp0TLqlSo5At%2FjpQANnSZgP8iEeVFnMasIN8xyAN2mdqYXVqP3dXt2AbZRL8fj6SRWa%2BFA1dybSS8ebE5scTH8BsB6Ubx8ppJSxc%3D\"}]}"},{"key":"CF-RAY","value":"9c6fe9092c493ec9-IAD"}],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":"{\n    \"purchaseId\": \"6973ad04fa54ee2cf14f438c\",\n    \"client\": {\n        \"customerId\": \"NA\",\n        \"email\": \"sl68792.bravo@bravapay.com\",\n        \"phone\": \"0557719399\",\n        \"full_name\": \"Test user\",\n        \"date_of_birth\": \"2004-07-12\",\n        \"street_address\": \"10 New Burlington StreetApt. 214\",\n        \"country\": \"CA\",\n        \"city\": \"London\",\n        \"zip_code\": \"W1S 3BE\",\n        \"cc\": [],\n        \"bcc\": [],\n        \"tax_number\": \"+447755564318\",\n        \"bankAccountNumber\": \"1345789678\",\n        \"stateCode\": \"QLD\"\n    },\n    \"updated_on\": 1769188614,\n    \"type\": \"purchase\",\n    \"paymentMethod\": \"VISA\",\n    \"amountUnit\": \"MAJOR\",\n    \"errorMsg\": \"ERROR_PARSING_GROUP_ID\",\n    \"errorCode\": \"NA\",\n    \"force_recurring\": false,\n    \"created_on\": 1769188612,\n    \"merchantRef\": \"6973ad04fa54ee2cf14f438c\",\n    \"purchase\": {\n        \"currency\": \"USD\",\n        \"products\": [\n            {\n                \"name\": \"gaming cards\",\n                \"quantity\": 1.0,\n                \"price\": 10.0,\n                \"discount\": 0,\n                \"tax_percent\": \"0.00\"\n            }\n        ],\n        \"total\": 10.0,\n        \"requestAmount\": 10.0,\n        \"language\": \"en\",\n        \"notes\": \"\",\n        \"debt\": 0,\n        \"total_formatted\": 1.0,\n        \"taxAmount\": 0.0,\n        \"taxPercent\": 0.0,\n        \"request_client_details\": [],\n        \"email_message\": \"\"\n    },\n    \"issuer_details\": {\n        \"website\": \"\",\n        \"legal_street_address\": \"\",\n        \"legal_country\": \"\",\n        \"legal_city\": \"\",\n        \"legal_zip_code\": \"\",\n        \"bank_accounts\": [\n            {}\n        ],\n        \"legal_name\": \"zenith\",\n        \"brand_name\": \"zenith\",\n        \"registration_number\": \"\",\n        \"tax_number\": \"\"\n    },\n    \"transaction_data\": {\n        \"payment_method\": \"\",\n        \"flow\": \"payform\",\n        \"extra\": {\n            \"expiry_month\": \"01\",\n            \"amount\": 10.0,\n            \"card_issuer\": \"VISION BANK\",\n            \"masked_pan\": \"42222222*2222\",\n            \"card_brand\": \"VISA\",\n            \"card_issuer_country\": \"SA\",\n            \"card_type\": \"DEBIT\",\n            \"cardholder_name\": \"fgjhknms\",\n            \"expiry_year\": \"29\"\n        },\n        \"country\": \"\",\n        \"attempts\": [\n            {\n                \"client_ip\": \"49.36.232.107\",\n                \"type\": \"execute\",\n                \"payment_method\": \"VISA\",\n                \"flow\": \"payform\",\n                \"successful\": false,\n                \"country\": \"VISA\",\n                \"processing_time\": 1769188612,\n                \"extra\": {\n                    \"amount\": 10.0,\n                    \"masked_pan\": \"VISA\",\n                    \"card_brand\": \"VISA\",\n                    \"card_issuer_country\": \"VISA\",\n                    \"cardholder_name\": \"Test user\"\n                },\n                \"error\": {\n                    \"message\": \"This customer can not be processed !\",\n                    \"code\": \"transaction_error\"\n                }\n            },\n            {\n                \"client_ip\": \"\",\n                \"type\": \"execute\",\n                \"payment_method\": \"VISA\",\n                \"flow\": \"payform\",\n                \"successful\": false,\n                \"country\": \"SA\",\n                \"processing_time\": 1769188613,\n                \"extra\": {\n                    \"expiry_month\": \"01\",\n                    \"amount\": 10.0,\n                    \"card_issuer\": \"VISION BANK\",\n                    \"masked_pan\": \"42222222*2222\",\n                    \"card_brand\": \"VISA\",\n                    \"card_issuer_country\": \"SA\",\n                    \"card_type\": \"DEBIT\",\n                    \"cardholder_name\": \"fgjhknms\",\n                    \"expiry_year\": \"29\"\n                },\n                \"error\": {\n                    \"message\": \"ERROR_PARSING_GROUP_ID\",\n                    \"code\": \"transaction_error\"\n                }\n            }\n        ]\n    },\n    \"status\": \"ERROR\",\n    \"status_history\": [\n        {\n            \"status\": \"created\",\n            \"timestamp\": 1769188612\n        },\n        {\n            \"status\": \"pending_execute\",\n            \"timestamp\": 1769188612\n        },\n        {\n            \"status\": \"error\",\n            \"timestamp\": 1769188613\n        },\n        {\n            \"status\": \"pending_execute\",\n            \"timestamp\": 1769188613\n        },\n        {\n            \"status\": \"error\",\n            \"timestamp\": 1769188614\n        },\n        {\n            \"status\": \"viewed\",\n            \"timestamp\": 1770016552\n        }\n    ],\n    \"viewedOn\": 1770016552,\n    \"is_test\": false,\n    \"brand_id\": \"555c458b-e737-4905-adb2-2451d37cbb6e\",\n    \"send_receipt\": false,\n    \"is_recurring_token\": false,\n    \"skip_capture\": false,\n    \"reference_generated\": \"PS1841\",\n    \"issued\": \"2026-01-23\",\n    \"due\": 1769188612,\n    \"refund_upto\": 0,\n    \"cc_descriptor\": \"\",\n    \"fraudScore\": \"NA\",\n    \"trustScore\": \"NA\",\n    \"extraFee\": \"0\",\n    \"paidOn\": 0,\n    \"receivedAmt\": 0.0,\n    \"taxAmount\": 0.0,\n    \"surcharge\": 0.0,\n    \"surchargeType\": \"\",\n    \"sessionId\": \"\",\n    \"refund_availability\": \"NONE\",\n    \"refundable_amount\": 0.0,\n    \"success_redirect\": \"https://app.paybomb.tech/getResponse.jsp?issucces=true\",\n    \"failure_redirect\": \"https://app.paybomb.tech/getResponse.jsp?issucces=false\",\n    \"pending_redirect\": \"https://app.paybomb.tech/getResponse.jsp?issucces=pending \",\n    \"cancel_redirect\": \"\",\n    \"success_callback\": \"https://www.google.com/\",\n    \"failure_callback\": \"https://app.paybomb.tech/merchant\",\n    \"platform\": \"API\",\n    \"created_from_ip\": \"49.36.232.107\",\n    \"checkout_url\": \"https://test4.paymentsclub.net/payments/a28ed9974a22a4cbd5f2f49cc26cc334/\",\n    \"direct_post_url\": \"https://test4.paymentsclub.net/api/v1/p/6973ad04fa54ee2cf14f438c/\",\n    \"payoutProcess\": false,\n    \"payment_type\": \"internal recurring\",\n    \"mandate_id\": \"696bc39a7bc779fac5201357\"\n}"}],"_postman_id":"c1d5e07a-1b41-42b7-b410-42f3ce95738b"}],"id":"3ffa0d69-d121-4818-abe0-4109b19af2af","_postman_id":"3ffa0d69-d121-4818-abe0-4109b19af2af","description":"","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"a1593e51-d80d-40c4-9c2c-31943fe87354","id":"a1593e51-d80d-40c4-9c2c-31943fe87354","name":"Recurring Payments","type":"folder"}}}],"id":"a1593e51-d80d-40c4-9c2c-31943fe87354","description":"<h1 id=\"overview\">Overview</h1>\n<p>Recurring Payments allow merchants to automatically charge customers at predefined or flexible intervals without requiring the customer to re-enter payment details each time.</p>\n<p>A <strong>Mandate</strong> represents the customer’s authorization that links their payment method to the merchant for future recurring charges. Once created, this mandate is used as a secure reference for all upcoming payments.</p>\n<p>Instead of processing every transaction as a one-time payment, merchants rely on mandates to execute recurring debits in a frictionless and compliant manner.</p>\n<p>The recurring payments may be initiated using Paybomb APIs as fixed/ non-fixed intervals based on your business use case.</p>\n<p>The Paybomb Subscription module (also known as Mandates) enables merchants to automate recurring billing for products and services. Unlike standard one-off transactions, this feature creates a persistent link between the merchant and the customer's payment method, allowing for future charges without requiring the customer to be present or re-enter their details.</p>\n<p>This system is built around two fundamental transaction types that define the lifecycle of a subscription:</p>\n<h3 id=\"1-mandate-registration-cit\"><strong>1. Mandate Registration (CIT)</strong></h3>\n<p>The <strong>Customer Initiated Transaction (CIT)</strong> represents the initial setup of the recurring payment mandate, during which the customer is actively present on the merchant’s website or application (in-session flow).</p>\n<p>In this flow, the merchant collects and submits the customer’s basic details along with the mandate configuration, including registration information, payment amount (fixed or variable, as applicable), and the scheduling frequency for recurring debits.</p>\n<p>As part of the setup process, the customer must explicitly provide consent for the mandate. To authenticate and activate the mandate, the customer also completes a one-time payment using the selected payment method. Once this payment is successful, the mandate is registered and becomes eligible for future automated recurring transactions as per the defined schedule.</p>\n<p><strong>Purpose</strong>:</p>\n<ul>\n<li><p>Capture customer payment details</p>\n</li>\n<li><p>Authenticate the transaction (typically via 3D Secure)</p>\n</li>\n<li><p>Collect customer consent for recurring billing</p>\n</li>\n</ul>\n<p><strong>Outcome:</strong></p>\n<ul>\n<li><p>A unique mandate_id is generated</p>\n</li>\n<li><p>This mandate acts as a secure token for all future charges</p>\n</li>\n</ul>\n<p><strong>Use Case:</strong></p>\n<p>The customer signs up for a subscription and completes the first payment</p>\n<h3 id=\"2-recurring-payments-mit\"><strong>2. Recurring Payments (MIT)</strong></h3>\n<p>The <strong>Merchant Initiated Transaction (MIT)</strong> represents the execution phase of the recurring payment lifecycle. In this stage, payments are automatically triggered by the merchant’s system or through Paybomb’s built-in scheduler without requiring the customer to be actively present (off-session flow).</p>\n<p>Once a mandate is successfully registered, merchants can initiate recurring debits as per the defined schedule and payment terms. These transactions are processed seamlessly using the customer’s authorized payment method.</p>\n<p>The Paybomb Mandate module provides the following benefits:</p>\n<ul>\n<li><p>Prebuilt support for a complete mandate registration experience using cards as the payment method</p>\n</li>\n<li><p>Flexible mandate setup to match different business models and customer requirements</p>\n</li>\n<li><p>Simplified execution of recurring payments through the Paybomb Dashboard with minimal operational effort</p>\n</li>\n<li><p>Built-in analytics and reporting tools to monitor mandate sign-ups, payment performance, and renewals</p>\n</li>\n</ul>\n<p><strong>Purpose:</strong></p>\n<ul>\n<li>Debit the customer according to the defined schedule or usage</li>\n</ul>\n<p><strong>Mechanism:</strong></p>\n<ul>\n<li><p>Merchant (or Paybomb scheduler) sends payment requests using the mandate_id</p>\n</li>\n<li><p>No card details are required again</p>\n</li>\n<li><p>Usually bypasses 3D Secure</p>\n</li>\n</ul>\n<p><strong>Use Case:</strong></p>\n<p>Monthly subscription renewal payment.</p>\n<h1 id=\"key-capabilities\"><strong>Key Capabilities</strong></h1>\n<ul>\n<li><p><strong>Flexible Scheduling:</strong> Define rigid schedules (Daily, Weekly, Monthly, Yearly) or use \"As Presented\" for irregular billing intervals.</p>\n</li>\n<li><p><strong>Amount Variability:</strong> Support for <strong>Fixed</strong> amounts (e.g., $10/month license) or <strong>Variable</strong> amounts (e.g., utility bills where the cost changes based on usage).</p>\n</li>\n<li><p><strong>Smart Management:</strong></p>\n<ul>\n<li><p><strong>Merchant Managed:</strong> You track the dates and trigger the API call when payment is due.</p>\n</li>\n<li><p><strong>Paybomb Managed:</strong> You define the rules (start date, end date, frequency), and Paybomb handles the execution logic.</p>\n</li>\n</ul>\n</li>\n<li><p><strong>Analytics &amp; Operations:</strong> Includes a dedicated dashboard for monitoring signup performance, renewal success rates, and managing cancellations.</p>\n</li>\n</ul>\n<p>There are 2 ways in which subscriptions are handled at Paybomb’s end:</p>\n<h4 id=\"merchant-managed-scheduling\"><strong>Merchant Managed Scheduling</strong></h4>\n<p>After successfully registering the mandate, the merchant creates a subscription linked to the customer’s mandate. Based on the defined billing cycle and business logic, the merchant then triggers the Recurring Payments API according to their own payment schedule to execute automated debits.</p>\n<p>This approach allows merchants to maintain full control over when and how recurring charges are initiated.</p>\n<ul>\n<li><p>Merchant tracks payment due dates</p>\n</li>\n<li><p>Merchant triggers recurring API calls manually</p>\n</li>\n</ul>\n<p><strong>Best for:</strong></p>\n<p>Custom billing logic or internal scheduling systems.</p>\n<h4 id=\"paybomb-managed-scheduling\"><strong>Paybomb Managed Scheduling</strong></h4>\n<p>In this model, the merchant creates a subscription within the Paybomb system and submits the recurring payment schedule, including billing frequency and timing. Based on the provided configuration, Paybomb automatically manages the execution of recurring transactions as per the defined schedule.</p>\n<p>This removes the need for merchants to manually trigger each payment, ensuring consistent and timely debits while maintaining a fully automated recurring billing process</p>\n<ul>\n<li><p>Merchant defines payment rules (start date, frequency, end date)</p>\n</li>\n<li><p>Paybomb automatically executes recurring charges</p>\n</li>\n</ul>\n<p><strong>Best for:</strong></p>\n<p>Standard subscription models with minimal operational overhead.</p>\n<h1 id=\"prerequisites\"><strong>Prerequisites</strong></h1>\n<p>Before starting the mandate integration, merchants must ensure that the required configurations are enabled both at the PSP level and within the Paybomb system.</p>\n<h4 id=\"mandate-enablement-at-psp-level\"><strong>Mandate Enablement at PSP Level</strong></h4>\n<p>Merchants must enable mandate-related features on their respective PSP (Payment Service Provider) dashboard. This ensures that the PSP supports recurring and mandate-based transactions.</p>\n<h4 id=\"configuration-on-the-paybomb-dashboard\"><strong>Configuration on the Paybomb Dashboard</strong></h4>\n<ul>\n<li><p>For whitelabel merchants or those using Paybomb’s whitelabel solution, the mandate support toggle must be enabled within the MID settings of the PSP configuration. This allows Paybomb to recognize and route mandate transactions correctly.</p>\n</li>\n<li><p>For merchants directly onboarded with Paybomb, this configuration is managed by the Paybomb team. Merchants should coordinate with their account manager to ensure mandate enablement is completed.</p>\n</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"b8264941-1a66-4eab-93d8-fdb7526a5b64"}},{"listen":"test","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"1e01c12b-4639-4998-80c7-1e4688ae2ba5"}}],"_postman_id":"a1593e51-d80d-40c4-9c2c-31943fe87354"},{"name":"Transaction Reporting","item":[{"name":"List Transactions","id":"9a97975d-1b2e-4755-8450-9fde938466b8","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"BrandId","value":"your-brand-id"},{"key":"Authorization","value":"Bearer Token"}],"url":"https://api.paybomb.net/api/v1/external/transactions/list?page_no=1&page_size=10&transaction_id=69d4ba22465443878a0045ba&start_date=2025-10-29%2000%3A00%3A00%20+05%3A30&end_date=2026-04-23%2000%3A00%3A00%20+05%3A30&last_updated_start=2026-01-07%2016%3A12%3A00%20+05%3A30&last_updated_end=2026-12-07%2016%3A12%3A00%20+05%3A30&customer_id=NA&status=paid&currency=USD&is_sandbox=true","description":"<p>Fetches a paginated list of transactions. This endpoint is optimized for high-volume retrieval and returns a summary view of each transaction (ID and Status).</p>\n<h4 id=\"important-path-params-to-consider\"><strong>Important Path Params to consider:</strong></h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Fields</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>page_no</td>\n<td>The index number of the page to retrieve.  <br />Zero-based indexing: The first page is 0, the second is 1, etc.  <br />Example: To get the third page of results, send page_no=2</td>\n</tr>\n<tr>\n<td>page_size</td>\n<td>The number of records to return per page.  <br />Minimum: 1  <br />Maximum: 100 (or whatever your API limit is).  <br />Usage: A larger page_size reduces the number of API calls but increases payload size.</td>\n</tr>\n<tr>\n<td>transaction_id</td>\n<td>If you want to filter with a specific transaction id. Multiple ids are not supported.  <br />If a transaction id is passed, it has the highest priority. All the below mentioned filters are ommitted.</td>\n</tr>\n<tr>\n<td>start_date</td>\n<td>If you want to filter between 2 dates.  <br />Format: 2026-01-07 16:12:00 +05:30  <br />Base timezone is in UTC.</td>\n</tr>\n<tr>\n<td>end_date</td>\n<td>If you want to filter between 2 dates  <br />Format: 2026-01-07 16:12:00 +05:30  <br />Base timezone is in UTC.</td>\n</tr>\n<tr>\n<td>last_updated_start</td>\n<td>If you want to filter with the last updated date of a transaction.  <br />Format: 2026-01-07 16:12:00 +05:30  <br />Base timezone is in UTC.</td>\n</tr>\n<tr>\n<td>last_updated_end</td>\n<td>If you want to filter with the last updated date of a transaction.  <br />Format: 2026-01-07 16:12:00 +05:30  <br />Base timezone is in UTC.</td>\n</tr>\n<tr>\n<td>customer_id</td>\n<td>If you want to filter with a specific customer id. Multiple ids are not supported.</td>\n</tr>\n<tr>\n<td>status</td>\n<td>If you want to filter with the status.</td>\n</tr>\n<tr>\n<td>currency</td>\n<td>If you want to filter with the currency.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"protocol":"https","path":["api","v1","external","transactions","list"],"host":["api","paybomb","net"],"query":[{"key":"page_no","value":"1"},{"key":"page_size","value":"10"},{"key":"transaction_id","value":"69d4ba22465443878a0045ba"},{"key":"start_date","value":"2025-10-29%2000%3A00%3A00%20+05%3A30"},{"key":"end_date","value":"2026-04-23%2000%3A00%3A00%20+05%3A30"},{"key":"last_updated_start","value":"2026-01-07%2016%3A12%3A00%20+05%3A30"},{"key":"last_updated_end","value":"2026-12-07%2016%3A12%3A00%20+05%3A30"},{"key":"customer_id","value":"NA"},{"key":"status","value":"paid"},{"key":"currency","value":"USD"},{"key":"is_sandbox","value":"true"}],"variable":[]}},"response":[{"id":"d52ce500-85e7-4973-ac86-1aa77f97447b","name":"Success","originalRequest":{"method":"GET","header":[{"key":"BrandId","value":"your-brand-id"},{"key":"Authorization","value":"Bearer Token"}],"url":{"raw":"https://api.paybomb.net/api/v1/external/transactions/list?page_no=1&page_size=10&start_date=2025-10-29%2000%3A00%3A00%20+05%3A30&end_date=2026-04-23%2000%3A00%3A00%20+05%3A30&last_updated_start=2026-01-07%2016%3A12%3A00%20+05%3A30&last_updated_end=2026-12-07%2016%3A12%3A00%20+05%3A30&customer_id=NA&status=paid&currency=USD&is_sandbox=true","protocol":"https","host":["api","paybomb","net"],"path":["api","v1","external","transactions","list"],"query":[{"key":"page_no","value":"1"},{"key":"page_size","value":"10"},{"key":"transaction_id","value":"69d4ba22465443878a0045ba","disabled":true},{"key":"start_date","value":"2025-10-29%2000%3A00%3A00%20+05%3A30"},{"key":"end_date","value":"2026-04-23%2000%3A00%3A00%20+05%3A30"},{"key":"last_updated_start","value":"2026-01-07%2016%3A12%3A00%20+05%3A30"},{"key":"last_updated_end","value":"2026-12-07%2016%3A12%3A00%20+05%3A30"},{"key":"customer_id","value":"NA"},{"key":"status","value":"paid"},{"key":"currency","value":"USD"},{"key":"is_sandbox","value":"true"}]}},"status":"Bad Request","code":400,"_postman_previewlanguage":"Text","header":[{"key":"Date","value":"Sun, 19 Apr 2026 14:11:10 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"Nel","value":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}"},{"key":"X-Frame-Options","value":"ALLOW-FROM *"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"x-session-id","value":"c2111eb2-6314-4f0b-b546-4ae3ee123a44"},{"key":"Vary","value":"Origin"},{"key":"Vary","value":"Access-Control-Request-Method"},{"key":"Vary","value":"Access-Control-Request-Headers"},{"key":"Server","value":"cloudflare"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"0"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 6a91ddfdf36644f1344da228258d9082.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"IAD61-P10"},{"key":"X-Amz-Cf-Id","value":"lKDk7cJHKNy2cOdf_AWXk3GlUJdWC5slaGWaVfgUf1Fn0XXm7T7D7Q=="},{"key":"cf-cache-status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=YLhXcnCfKpMy2KQEcmek7bxnkI2lT3%2F5IQ8opo9ZpZ4E852qZoWIFsjJ%2BcmGZfTO7S1rWYnB3uzuGwMYwevQ%2F47w%2Bm6u51jrIfjuG3TDh08KGeWKRbR92ItXRYPoh1CgVmja\"}]}"},{"key":"CF-RAY","value":"9eec7f31f973c9b7-IAD"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": {\n        \"content\": [\n            {\n                \"transaction_id\": \"69e2146828bea6ca2e31bc85\",\n                \"status\": \"paid\"\n            },\n            {\n                \"transaction_id\": \"69e20fd928bea6ca2e31b17c\",\n                \"status\": \"paid\"\n            }\n        ],\n        \"currentPage\": 1,\n        \"pageSize\": 2,\n        \"totalElements\": 95,\n        \"totalPages\": 48,\n        \"first\": true,\n        \"last\": false,\n        \"hasNext\": true,\n        \"hasPrevious\": false\n    }\n}"}],"_postman_id":"9a97975d-1b2e-4755-8450-9fde938466b8"},{"name":"Get Detailed Transaction Details","id":"ddf12dd5-028a-445b-9faa-ebea11f5a7ac","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"BrandId","value":"your-brand-id"},{"key":"Authorization","value":"Bearer Token"}],"url":"https://api.paybomb.net/api/v1/external/transactions/data/69e20fd928bea6ca2e31b17c?page_no=1&page_size=10&include_subtransactions=true","description":"<p>Retrieves the complete details for a specific transaction. This includes customer info, payment method details, bank response codes, and hierarchy metadata (parent/child transactions).</p>\n<h3 id=\"additional-query-parameters-for-this-usecase\">Additional query <strong>parameters for this usecase:</strong></h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Notes</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>include_subtransactions</td>\n<td>Mandatory.  <br />Possible Values: true/false  <br />  <br />If true, includes child transactions (e.g., recurring payments).</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"protocol":"https","path":["api","v1","external","transactions","data","69e20fd928bea6ca2e31b17c"],"host":["api","paybomb","net"],"query":[{"key":"page_no","value":"1"},{"key":"page_size","value":"10"},{"key":"include_subtransactions","value":"true"}],"variable":[]}},"response":[{"id":"15e64e58-b6a5-4937-9300-d14ff6a6031c","name":"Success","originalRequest":{"method":"GET","header":[{"key":"BrandId","value":"your-brand-id"},{"key":"Authorization","value":"Bearer Token"}],"url":{"raw":"https://api.paybomb.net/api/v1/external/transactions/data/69e20fd928bea6ca2e31b17c?page_no=1&page_size=10&include_subtransactions=true","protocol":"https","host":["api","paybomb","net"],"path":["api","v1","external","transactions","data","69e20fd928bea6ca2e31b17c"],"query":[{"key":"page_no","value":"1"},{"key":"page_size","value":"10"},{"key":"include_subtransactions","value":"true"}]}},"status":"Bad Request","code":400,"_postman_previewlanguage":"Text","header":[{"key":"Date","value":"Sun, 19 Apr 2026 14:13:09 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"Nel","value":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}"},{"key":"X-Frame-Options","value":"ALLOW-FROM *"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"x-session-id","value":"3d9fb1d1-b30f-4c3e-a76f-6956e3731ad3"},{"key":"Vary","value":"Origin"},{"key":"Vary","value":"Access-Control-Request-Method"},{"key":"Vary","value":"Access-Control-Request-Headers"},{"key":"Server","value":"cloudflare"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"0"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 64d4305f6a0418824e90908ac490184e.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"IAD61-P10"},{"key":"X-Amz-Cf-Id","value":"COt7k0tEcVGSOSy8pTkHoOqGoG1lSgC9qz8baoKbgmPkAh5dq0GNjQ=="},{"key":"cf-cache-status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=hn0q1Q9Cqa9onXwzy%2F1Qeq8u4RTGt3q%2BZNFW29weO%2BOmtABh6y8XLnAH9%2FytCQEEOmNzdnvM0oPcQruiJvYqQQShCKOndiMKUnEksUPM9I9UMph4qP7s1ognTK%2BBhheXvIwO\"}]}"},{"key":"CF-RAY","value":"9eec821e0f4b172c-IAD"}],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":"{\n    \"data\": {\n        \"transaction_id\": \"69e20fd928bea6ca2e31b17c\",\n        \"merchant_reference\": \"69e20fd928bea6ca2e31b17c\",\n        \"customer_id\": \"NA\",\n        \"amount\": 1.0,\n        \"currency\": \"USD\",\n        \"status\": \"paid\",\n        \"session_id\": \"\",\n        \"email\": \"aryangupta+3265@paybomb.tech\",\n        \"merchant_name\": \"prithvimerch\",\n        \"payment_method\": \"MASTER\",\n        \"payment_flow\": \"payform\",\n        \"issuing_bank\": \"PUBLIC BANK BERHAD\",\n        \"created_at\": \"2026-04-17T10:47:53Z\",\n        \"error_reason\": \"Transaction succeeded-APPROVED\",\n        \"last_updated_at\": \"2026-04-17T10:49:14Z\",\n        \"transaction_type\": \"parent\",\n        \"fees\": [\n            {\n                \"type\": \"mdr\",\n                \"amount\": 0.00,\n                \"currency\": \"USD\"\n            },\n            {\n                \"type\": \"decline_fee\",\n                \"amount\": 0,\n                \"currency\": \"USD\"\n            },\n            {\n                \"type\": \"transaction_fee\",\n                \"amount\": 0.1,\n                \"currency\": \"USD\"\n            },\n            {\n                \"type\": \"fraud_refund_fee\",\n                \"amount\": 0,\n                \"currency\": \"USD\"\n            },\n            {\n                \"type\": \"refund_fee\",\n                \"amount\": 0,\n                \"currency\": \"USD\"\n            },\n            {\n                \"type\": \"chargeback_fee\",\n                \"amount\": 0,\n                \"currency\": \"USD\"\n            },\n            {\n                \"type\": \"extra_fee\",\n                \"amount\": 0,\n                \"currency\": \"USD\"\n            }\n        ],\n        \"metadata\": {\n            \"has_subtransactions\": false,\n            \"total_subtransactions\": 0,\n            \"transaction_hierarchy_level\": \"parent\"\n        }\n    }\n}"}],"_postman_id":"ddf12dd5-028a-445b-9faa-ebea11f5a7ac"}],"id":"ad99a973-2ffd-4196-b491-9ecc3a8c1eba","description":"<h2 id=\"overview\">Overview</h2>\n<p>The Transaction Reporting APIs allow merchants to retrieve detailed logs of their payment activity programmatically. This is useful for:</p>\n<ul>\n<li><p><strong>Reconciliation:</strong> Matching Paybomb records with your internal order system.</p>\n</li>\n<li><p><strong>Audit Trails:</strong> Tracking the status history of specific transactions.</p>\n</li>\n<li><p><strong>Data Export:</strong> Pulling transaction data into your own analytics tools.</p>\n</li>\n</ul>\n<p>There are two primary endpoints:</p>\n<ol>\n<li><p><strong>List Transactions:</strong> Retrieves a paginated list of all transactions for a specific Brand ID.</p>\n</li>\n<li><p><strong>Get Transaction Details:</strong> Retrieves the full data payload for a single transaction ID, including metadata and sub-transaction details.</p>\n</li>\n</ol>\n","_postman_id":"ad99a973-2ffd-4196-b491-9ecc3a8c1eba"},{"name":"Network Tokenisation","item":[{"name":"Merchant Configuration","item":[],"id":"47b5cfd8-5edb-4097-b047-3d4ad7a40421","description":"<p>Before you can use network tokenisation in your payment flow, the feature must be enabled and configured on your merchant account. This section walks through the setup steps in the Paybomb Dashboard.</p>\n<h2 id=\"enabling-network-tokenisation\">Enabling Network Tokenisation</h2>\n<p>Network tokenisation requires activation at the merchant level. Follow these steps in the Paybomb Dashboard:</p>\n<ol>\n<li><p>Log in to your Paybomb merchant account.</p>\n</li>\n<li><p>Navigate to Merchant Details → Allowed Services.</p>\n</li>\n<li><p>Enable “Allow Network Token” to activate tokenisation for your account.</p>\n</li>\n</ol>\n<p><strong>Admin Activation Required</strong><br />Network tokenisation must first be enabled at the platform level by your Paybomb account administrator. If you do not see the “Allow Network Token” option in your dashboard, contact your Paybomb account manager to request activation.</p>\n<img src=\"https://content.pstmn.io/52c51efd-1539-4e4d-ac3a-38c576f9c1aa/VW50aXRsZWQgZGVzaWduICgzMykucG5n\" alt />\n\n<h2 id=\"paybomb-token-service-setup\">Paybomb Token Service Setup</h2>\n<p>After enabling network tokenisation, configure the Paybomb Token Service with your merchant details:</p>\n<ol>\n<li><p>In the Paybomb Dashboard, navigate to Global Settings → Paybomb Token Service.</p>\n</li>\n<li><p>Fill in all the required fields accurately.</p>\n</li>\n<li><p>Enter your Category Code — this represents your merchant business type code (MCC).</p>\n</li>\n<li><p>Click Save.</p>\n</li>\n<li><p>After saving, verify that the status shows as Pending (visible in the top-right corner of the page).</p>\n</li>\n<li><p>The status will automatically update to Active or Error once your token profile is created.</p>\n</li>\n</ol>\n<img src=\"https://content.pstmn.io/1a41fc67-9194-4ba6-8b4a-2c50a4923740/U2NyZWVuc2hvdCAyMDI2LTAzLTEzIGF0IDMuMjkuNDXigK9BTS5wbmc=\" />\n\n<p><strong>Status Update Timing:</strong> The status update from Pending to Active may take up to 1 hour. Do not attempt to use tokenisation APIs until the status shows Active. If the status changes to Error, contact your Paybomb account manager for resolution.</p>\n<h3 id=\"status-values\"><strong>Status Values</strong></h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Status</th>\n<th>Meaning</th>\n<th>Action Required</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Pending</td>\n<td>Your token service profile has been submitted and is being provisioned.</td>\n<td>Wait for the status to update. This may take up to 1 hour.</td>\n</tr>\n<tr>\n<td>Active</td>\n<td>Token service is live and ready to use. You can now process tokenised transactions.</td>\n<td>None — you are ready to integrate.</td>\n</tr>\n<tr>\n<td>Error</td>\n<td>There was a problem creating your token profile.</td>\n<td>Contact your Paybomb account manager to resolve the issue.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"1aea1829-8696-4c1a-86b7-35b45d392001"}},{"listen":"test","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"515b74d6-99cd-4aad-a69b-eac0127608ba"}}],"_postman_id":"47b5cfd8-5edb-4097-b047-3d4ad7a40421"},{"name":"APIs","item":[{"name":"List Saved Cards","id":"cb64a87c-3183-4c48-8a64-49651ddb0dc3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"GET","header":[],"url":"https://app.paybomb.tech/api/v1/listSavedCards","description":"<h2 id=\"list-saved-cards\">List Saved Cards</h2>\n<p>Retrieve all saved card tokens for a given customer. Returns the last 4 digits of each card and its associated <code>token_reference</code>.</p>\n<p>Use this API to display saved cards to the customer for selection before initiating a payment via the S2S API.</p>\n<h3 id=\"query-parameters\">Query 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>Required</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>customerId</code></td>\n<td>string</td>\n<td>Yes</td>\n<td>Unique identifier for the customer. Must be URL-encoded if it contains special characters. Email addresses are case-sensitive.</td>\n</tr>\n<tr>\n<td><code>brandId</code></td>\n<td>string</td>\n<td>Yes</td>\n<td>Brand id of the merchant</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"response-fields\">Response Fields</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Type</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>card_last_four</code></td>\n<td>string</td>\n<td>Last 4 digits of the stored card. Display to the customer for card selection.</td>\n</tr>\n<tr>\n<td><code>token_reference</code></td>\n<td>string</td>\n<td>Unique reference for this saved card. Pass this in the S2S payment request or Delete Token request. Do not display to the customer.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"notes\">Notes</h3>\n<ul>\n<li><p>The <code>token_reference</code> does not expire. It remains valid as long as the saved card has not been deleted.</p>\n</li>\n<li><p>Show saved cards to the customer using <code>card_last_four</code> alongside a card brand icon (Visa / Mastercard).</p>\n</li>\n<li><p>The <code>token_reference</code> should only be stored and used server-side.</p>\n</li>\n</ul>\n<h3 id=\"display-tip\">Display Tip</h3>\n<p>Show saved cards using cardlast4 alongside a card brand icon (Visa / Mastercard).<br />The token_reference should only be stored and used server-side.</p>\n","urlObject":{"path":["listSavedCards"],"host":["https://app.paybomb.tech/api/v1"],"query":[],"variable":[]}},"response":[{"id":"366a843a-b2a7-40a4-8926-987cc2aacf69","name":"Success","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer {{APIKey}}","type":"text"}],"url":{"raw":"https://app.paybomb.tech/api/v1/listSavedCards?customerId=test@paybomb.tech&brandId=fceb4dea-163c-492c-a9e6-beedd8539da8","host":["https://app.paybomb.tech/api/v1"],"path":["listSavedCards"],"query":[{"key":"customerId","value":"test@paybomb.tech"},{"key":"brandId","value":"fceb4dea-163c-492c-a9e6-beedd8539da8"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"[\n    {\n        \"card_last_four\": \"1003\",\n        \"token_reference\": \"token_2bcf691f0f0347d6bcb38118d1bb31d5\"\n    },\n    {\n        \"card_last_four\": \"6006\",\n        \"token_reference\": \"token_e17dd98c66c14b37afaa62bd4770f915\"\n    },\n    {\n        \"card_last_four\": \"6916\",\n        \"token_reference\": \"token_7178bb7208614544a285656da38ae5ac\"\n    }\n]"}],"_postman_id":"cb64a87c-3183-4c48-8a64-49651ddb0dc3"},{"name":"Purchase","id":"3400889e-fa47-4805-9100-f1a44e4e49a3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer {{APIKey}}","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"client\": {\n        \"email\": \"customer@example.com\",\n        \"country\": \"IN\",\n        \"city\": \"Jaipur\",\n        \"stateCode\": \"RJ\",\n        \"street_address\": \"123 Main Street\",\n        \"zip_code\": \"302001\",\n        \"phone\": \"9999999999\"\n    },\n    \"purchase\": {\n        \"currency\": \"USD\",\n        \"products\": [\n            {\n                \"name\": \"Product Name\",\n                \"price\": \"10.00\"\n            }\n        ]\n    },\n    \"brand_id\": \"{{BrandId}}\",\n    \"success_redirect\": \"https://yoursite.com/success\",\n    \"failure_redirect\": \"https://yoursite.com/failure\",\n    \"pending_redirect\": \"https://yoursite.com/pending\",\n    \"success_callback\": \"https://yoursite.com/webhook/success\",\n    \"failure_callback\": \"https://yoursite.com/webhook/failure\"\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/api/v1/purchases","description":"<h2 id=\"purchase\">Purchase</h2>\n<p>Initiate a payment transaction. This is the standard Paybomb Purchase API.</p>\n<p>When a customer completes the purchase on the Paybomb checkout page and opts to save their card, Paybomb provisions a network token in the background and generates a <code>token_reference</code> linked to the customer.</p>\n<h3 id=\"mandatory-parameters\">Mandatory 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</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>client.email</code></td>\n<td>string</td>\n<td>Customer's email address.  <br />Please send it in smallcase</td>\n</tr>\n<tr>\n<td><code>client.city</code></td>\n<td>string</td>\n<td>Customer's city.</td>\n</tr>\n<tr>\n<td><code>client.country</code></td>\n<td>string</td>\n<td>ISO-3166 Alpha-2 country code, uppercase (e.g., IN, US, SG).</td>\n</tr>\n<tr>\n<td><code>client.stateCode</code></td>\n<td>string</td>\n<td>State code, uppercase (e.g., RJ, CA, AL).</td>\n</tr>\n<tr>\n<td><code>client.street_address</code></td>\n<td>string</td>\n<td>Customer's street address.</td>\n</tr>\n<tr>\n<td><code>client.zip_code</code></td>\n<td>string</td>\n<td>Postal / ZIP code. US format: NNNNN or NNNNN-NNNN.</td>\n</tr>\n<tr>\n<td><code>purchase.currency</code></td>\n<td>string</td>\n<td>ISO 4217 currency code (e.g., USD, EUR). Must be enabled on your account.</td>\n</tr>\n<tr>\n<td><code>purchase.products</code></td>\n<td>array</td>\n<td>Array of product objects with <code>name</code> and <code>price</code>.</td>\n</tr>\n<tr>\n<td><code>brand_id</code></td>\n<td>string</td>\n<td>Your Paybomb Brand ID from Dashboard.</td>\n</tr>\n<tr>\n<td><code>success_redirect</code></td>\n<td>string</td>\n<td>URL to redirect customer after successful payment.</td>\n</tr>\n<tr>\n<td><code>failure_redirect</code></td>\n<td>string</td>\n<td>URL to redirect customer after failed payment.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"optional-parameters\">Optional 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</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>pending_redirect</code></td>\n<td>string</td>\n<td>URL to redirect when payment is pending.</td>\n</tr>\n<tr>\n<td><code>success_callback</code></td>\n<td>string</td>\n<td>Server-to-server webhook URL for success.</td>\n</tr>\n<tr>\n<td><code>failure_callback</code></td>\n<td>string</td>\n<td>Server-to-server webhook URL for failure.</td>\n</tr>\n<tr>\n<td><code>merchantRef</code></td>\n<td>string</td>\n<td>Your internal reference for this transaction.</td>\n</tr>\n<tr>\n<td><code>paymentMethod</code></td>\n<td>string</td>\n<td>Pre-select payment method (e.g., VISA).</td>\n</tr>\n<tr>\n<td><code>client.phone</code></td>\n<td>string</td>\n<td>Customer's phone number.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"key-response-fields\">Key Response Fields</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td>Unique purchase ID.</td>\n</tr>\n<tr>\n<td><code>checkout_url</code></td>\n<td>Redirect customer here to complete payment. Card saving happens during this step.</td>\n</tr>\n<tr>\n<td><code>direct_post_url</code></td>\n<td>URL for S2S payment submission.</td>\n</tr>\n<tr>\n<td><code>status</code></td>\n<td>Purchase status. Initially \"created\".</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"network-tokenisation--card-saving\"><strong>Network Tokenisation &amp; Card Saving</strong></h4>\n<p>When the customer completes payment via <code>checkout_url</code> and opts to save their card, Paybomb provisions a network token. The <code>token_reference</code> is then available via the <strong>List Saved Cards</strong> API.</p>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"53bb72ca-bd42-41cd-a2a7-d4a24841bd4e","id":"53bb72ca-bd42-41cd-a2a7-d4a24841bd4e","name":"APIs","type":"folder"}},"urlObject":{"path":["api","v1","purchases"],"host":["https://app.paybomb.tech/api/v1"],"query":[],"variable":[]}},"response":[{"id":"c26e38a4-a08d-4a50-9c33-e7e370a12e74","name":"Success","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer {{APIKey}}","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"client\": {\n        \"email\": \"customer@example.com\",\n        \"country\": \"IN\",\n        \"city\": \"Jaipur\",\n        \"stateCode\": \"RJ\",\n        \"street_address\": \"123 Main Street\",\n        \"zip_code\": \"302001\",\n        \"phone\": \"9999999999\"\n    },\n    \"purchase\": {\n        \"currency\": \"USD\",\n        \"products\": [\n            {\n                \"name\": \"Product Name\",\n                \"price\": \"10.00\"\n            }\n        ]\n    },\n    \"brand_id\": \"bd69e8a5-adcf-40de-9e43-2b87cb129a5e\",\n    \"success_redirect\": \"https://yoursite.com/success\",\n    \"failure_redirect\": \"https://yoursite.com/failure\",\n    \"pending_redirect\": \"https://yoursite.com/pending\",\n    \"success_callback\": \"https://yoursite.com/webhook/success\",\n    \"failure_callback\": \"https://yoursite.com/webhook/failure\"\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/api/v1/purchases"},"status":"Accepted","code":202,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"purchaseId\": \"69b32e42250ac73495aefd50\",\n    \"client\": {\n        \"customerId\": \"NA\",\n        \"email\": \"himanshu1@paybomb.tech\",\n        \"full_name\": \"OpHM\",\n        \"date_of_birth\": \"1800-01-01\",\n        \"street_address\": \"SB-124\",\n        \"country\": \"BR\",\n        \"city\": \"DLJPR\",\n        \"zip_code\": \"110001\",\n        \"cc\": [],\n        \"bcc\": [],\n        \"stateCode\": \"DL\"\n    },\n    \"updated_on\": 1773350466,\n    \"type\": \"purchase\",\n    \"paymentMethod\": \"MASTER\",\n    \"amountUnit\": \"MAJOR\",\n    \"errorMsg\": \"\",\n    \"errorCode\": \"NA\",\n    \"force_recurring\": false,\n    \"created_on\": 1773350466,\n    \"merchantRef\": \"69b32e42250ac73495aefd50\",\n    \"purchase\": {\n        \"currency\": \"USD\",\n        \"products\": [\n            {\n                \"name\": \"e-commerce\",\n                \"quantity\": 1.0,\n                \"price\": 10.0,\n                \"discount\": 0,\n                \"tax_percent\": \"0.00\"\n            }\n        ],\n        \"total\": 10.0,\n        \"requestAmount\": 10.0,\n        \"language\": \"en\",\n        \"notes\": \"\",\n        \"debt\": 0,\n        \"total_formatted\": 1.0,\n        \"taxAmount\": 0.0,\n        \"taxPercent\": 0.0,\n        \"request_client_details\": [],\n        \"email_message\": \"\"\n    },\n    \"issuer_details\": {\n        \"website\": \"\",\n        \"legal_street_address\": \"\",\n        \"legal_country\": \"\",\n        \"legal_city\": \"\",\n        \"legal_zip_code\": \"\",\n        \"bank_accounts\": [\n            {}\n        ],\n        \"legal_name\": \"brand\",\n        \"brand_name\": \"brand\",\n        \"registration_number\": \"\",\n        \"tax_number\": \"\"\n    },\n    \"transaction_data\": {\n        \"payment_method\": \"\",\n        \"flow\": \"payform\",\n        \"extra\": {},\n        \"country\": \"\",\n        \"attempts\": []\n    },\n    \"status\": \"CREATED\",\n    \"status_history\": [\n        {\n            \"status\": \"created\",\n            \"timestamp\": 1773350466\n        }\n    ],\n    \"is_test\": false,\n    \"brand_id\": \"5949f2ac-b5a3-4ee4-b585-ad4cf9a6db18\",\n    \"send_receipt\": false,\n    \"is_recurring_token\": false,\n    \"skip_capture\": false,\n    \"reference_generated\": \"PS1060\",\n    \"issued\": \"2026-03-12\",\n    \"due\": 1773350466,\n    \"refund_upto\": 0,\n    \"cc_descriptor\": \"\",\n    \"fraudScore\": \"NA\",\n    \"trustScore\": \"NA\",\n    \"extraFee\": \"0\",\n    \"paidOn\": 0,\n    \"receivedAmt\": 0.0,\n    \"taxAmount\": 0.0,\n    \"surcharge\": 0.0,\n    \"surchargeType\": \"\",\n    \"sessionId\": \"\",\n    \"refund_availability\": \"NONE\",\n    \"refundable_amount\": 0.0,\n    \"success_redirect\": \"https://google.com/\",\n    \"failure_redirect\": \"https://facebook.com/\",\n    \"pending_redirect\": \"https://app.paybomb.tech\",\n    \"cancel_redirect\": \"\",\n    \"success_callback\": \"https://your.success.callback.com\",\n    \"failure_callback\": \"https://your.failure.callback.com\",\n    \"platform\": \"API\",\n    \"created_from_ip\": \"110.235.229.171\",\n    \"checkout_url\": \"https://api.choicepay.ca/payments/1b73d31d178113798afa0157c8805ef0/\",\n    \"direct_post_url\": \"https://api.choicepay.ca/api/v1/p/69b32e42250ac73495aefd50/\",\n    \"payoutProcess\": false\n}"}],"_postman_id":"3400889e-fa47-4805-9100-f1a44e4e49a3"},{"name":"S2S Payment","id":"ffaf923d-e245-44ba-a0df-f67dd78b9ff4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer {{APIKey}}","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"Token_reference\": \"token_7178aa7208614544a285656da38ae5ac\",\n    \"cvc\": \"791\",\n    \"remember_card\": \"off\",\n    \"remote_ip\": \"157.38.242.7\",\n    \"user_agent\": \"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36\",\n    \"accept_header\": \"text/html\",\n    \"language\": \"en-US\",\n    \"java_enabled\": false,\n    \"javascript_enabled\": true,\n    \"color_depth\": 24,\n    \"utc_offset\": 0,\n    \"screen_width\": 1920,\n    \"screen_height\": 1080\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/api/v1/p/{{brandId}}/?s2s=true","description":"<h2 id=\"s2s-payment\">S2S Payment</h2>\n<p>Process a payment using a saved card's <code>token_reference</code>. Paybomb resolves the token reference to the underlying network token and processes the payment securely. If the selected MID does not accept tokens, Paybomb automatically falls back to the card number.</p>\n<h3 id=\"s2s-input-scenarios\">S2S Input Scenarios</h3>\n<p>The S2S API accepts different input types depending on the scenario:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Scenario</th>\n<th>What to Send</th>\n<th>What Paybomb Does</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><strong>New card</strong> (first-time customer)</td>\n<td>Full card details</td>\n<td>Paybomb tokenises the card. If the MID supports tokens, the transaction uses the token; otherwise, the card number is used.</td>\n</tr>\n<tr>\n<td><strong>Returning customer</strong> (tokenised with Paybomb)</td>\n<td><code>token_reference</code> from List Saved Cards</td>\n<td>Paybomb uses the stored token and generates a new cryptogram. Falls back to card number if MID doesn't accept tokens.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"request-body\">Request Body</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Type</th>\n<th>Required</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>token_reference</code></td>\n<td>string</td>\n<td>Conditional</td>\n<td>Token reference from List Saved Cards. Required when paying with a Paybomb-tokenised card.</td>\n</tr>\n<tr>\n<td><code>cvc</code></td>\n<td>string</td>\n<td>Yes</td>\n<td>Card CVC/CVV. <strong>Required even when</strong> <strong><code>token_reference</code></strong> <strong>is provided</strong>, for 3DS authentication.</td>\n</tr>\n<tr>\n<td><code>remember_card</code></td>\n<td>string</td>\n<td>No</td>\n<td><code>\"on\"</code> to save card, <code>\"off\"</code> to skip. Use <code>\"off\"</code> with saved tokens.</td>\n</tr>\n<tr>\n<td><code>remote_ip</code></td>\n<td>string</td>\n<td>Yes</td>\n<td>Cardholder's IP address.</td>\n</tr>\n<tr>\n<td><code>user_agent</code></td>\n<td>string</td>\n<td>Yes</td>\n<td>Browser User-Agent string.</td>\n</tr>\n<tr>\n<td><code>accept_header</code></td>\n<td>string</td>\n<td>Yes</td>\n<td>Browser Accept header.</td>\n</tr>\n<tr>\n<td><code>language</code></td>\n<td>string</td>\n<td>Yes</td>\n<td>Browser language (e.g., <code>\"en-US\"</code>).</td>\n</tr>\n<tr>\n<td><code>java_enabled</code></td>\n<td>boolean</td>\n<td>Yes</td>\n<td>Java enabled in browser.</td>\n</tr>\n<tr>\n<td><code>javascript_enabled</code></td>\n<td>boolean</td>\n<td>Yes</td>\n<td>JavaScript enabled in browser.</td>\n</tr>\n<tr>\n<td><code>color_depth</code></td>\n<td>integer</td>\n<td>Yes</td>\n<td>Screen colour depth.</td>\n</tr>\n<tr>\n<td><code>utc_offset</code></td>\n<td>integer</td>\n<td>Yes</td>\n<td>UTC timezone offset (minutes).</td>\n</tr>\n<tr>\n<td><code>screen_width</code></td>\n<td>integer</td>\n<td>Yes</td>\n<td>Screen width (px).</td>\n</tr>\n<tr>\n<td><code>screen_height</code></td>\n<td>integer</td>\n<td>Yes</td>\n<td>Screen height (px).</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"token-reference-in-response\">Token Reference in Response</h3>\n<ul>\n<li><p><strong>Scenario 1</strong> (New card via S2S): <code>token_reference</code> returned in Check Status and Webhook.</p>\n</li>\n<li><p><strong>Scenario 2</strong> (Existing <code>token_reference</code>): <code>token_reference</code> returned in response and Webhook.</p>\n</li>\n</ul>\n<h3 id=\"important-notes\">Important Notes</h3>\n<ul>\n<li><p>CVC is <strong>required</strong> even when using a <code>token_reference</code>.</p>\n</li>\n<li><p>All browser fields are required for 3D Secure authentication.</p>\n</li>\n<li><p>Response follows the standard Paybomb payment response format.</p>\n</li>\n</ul>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"53bb72ca-bd42-41cd-a2a7-d4a24841bd4e","id":"53bb72ca-bd42-41cd-a2a7-d4a24841bd4e","name":"APIs","type":"folder"}},"urlObject":{"path":["api","v1","p","{{brandId}}",""],"host":["https://app.paybomb.tech/api/v1"],"query":[{"description":{"content":"<p>Must be \"true\" for server-to-server requests.</p>\n","type":"text/plain"},"key":"s2s","value":"true"}],"variable":[]}},"response":[{"id":"d2b2251f-055c-4475-a13f-273a3d61a978","name":"Success","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer {{APIKey}}","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"Token_reference\": \"token_7178aa7208614544a285656da38ae5ac\",\n    \"cvc\": \"791\",\n    \"remember_card\": \"off\",\n    \"remote_ip\": \"157.38.242.7\",\n    \"user_agent\": \"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36\",\n    \"accept_header\": \"text/html\",\n    \"language\": \"en-US\",\n    \"java_enabled\": false,\n    \"javascript_enabled\": true,\n    \"color_depth\": 24,\n    \"utc_offset\": 0,\n    \"screen_width\": 1920,\n    \"screen_height\": 1080\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://app.paybomb.tech/api/v1/api/v1/p/6980e509b5e99e61f3bd4ccf/?s2s=true","host":["https://app.paybomb.tech/api/v1"],"path":["api","v1","p","6980e509b5e99e61f3bd4ccf",""],"query":[{"key":"s2s","value":"true"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"pending\",\n    \"callback_url\": \"http://18.214.100.20/api/v1/payment/64b034ecc6dccf7d329d9eb3/\",\n    \"method\": \"GET\"\n}"}],"_postman_id":"ffaf923d-e245-44ba-a0df-f67dd78b9ff4"},{"name":"Delete Token","id":"1ab28816-58a5-44ba-9651-eb4064848efe","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[{"key":"Authorization","value":"Bearer {{APIKey}}","type":"text"}],"url":"https://app.paybomb.tech/api/v1/tokens/v1/deleteToken/{{token_reference}}","description":"<h2 id=\"delete-token\">Delete Token</h2>\n<p>Permanently delete a saved card and deactivate the associated network token. <strong>This action is irreversible.</strong></p>\n<h3 id=\"path-parameters\">Path 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>Required</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>token_reference</code></td>\n<td>string</td>\n<td>Yes</td>\n<td>The <code>token_reference</code> of the saved card to delete. Obtained from the List Saved Cards API.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"important-notes\">Important Notes</h3>\n<ul>\n<li><p>Deleting a token is <strong>permanent</strong>. The <code>token_reference</code> can no longer be used for payments.</p>\n</li>\n<li><p>The associated network token is deactivated with the card network.</p>\n</li>\n<li><p>If the customer wants to pay with this card again, they will need to re-enter their card details.</p>\n</li>\n</ul>\n<h3 id=\"when-to-delete\">When to Delete</h3>\n<ul>\n<li><p>Customer explicitly requests removal of their saved card.</p>\n</li>\n<li><p>GDPR or data retention compliance when a customer closes their account.</p>\n</li>\n<li><p>Consider implementing a \"Remove Card\" option in your account management UI.</p>\n</li>\n</ul>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"53bb72ca-bd42-41cd-a2a7-d4a24841bd4e","id":"53bb72ca-bd42-41cd-a2a7-d4a24841bd4e","name":"APIs","type":"folder"}},"urlObject":{"path":["tokens","v1","deleteToken","{{token_reference}}"],"host":["https://app.paybomb.tech/api/v1"],"query":[],"variable":[]}},"response":[{"id":"4ed5e294-59bb-40cd-bc24-3287e14ddab9","name":"Success","originalRequest":{"method":"DELETE","header":[{"key":"Authorization","value":"Bearer {{APIKey}}","type":"text"}],"url":"https://app.paybomb.tech/api/v1/tokens/v1/deleteToken/token_4ccea9d67d274f3db6e0be6156e09d06"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Token deleted successfully\"\n}"},{"id":"8849169f-4819-4e88-b711-a3449366b6db","name":"Failure","originalRequest":{"method":"DELETE","header":[{"key":"Authorization","value":"Bearer {{APIKey}}","type":"text"}],"url":"https://app.paybomb.tech/api/v1/tokens/v1/deleteToken/token_4ccea9d67d274f3db6e0be6156e09d06"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json"}],"cookie":[],"responseTime":null,"body":"{\n  \"message\": \"token_reference does not exist in the system\",\n  \"code\": \"token_reference_invalid\"\n}"}],"_postman_id":"1ab28816-58a5-44ba-9651-eb4064848efe"},{"name":"PayOut","id":"d085eb3f-9e33-47d7-9597-7c599fc1429a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"client\": {\n        \"email\": \"rahul@gmail.com\",\n        \"country\": \"GB\",\n        \"city\": \"London\",\n        \"stateCode\": \"QLD\",\n        \"full_name\": \"Rahul Jain\",\n        \"street_address\": \"10 New Burlington Street Apt. 214\",\n        \"zip_code\": \"W1S 3BE\",\n        \"phone\": \"+44 9876543210\",\n        \"gender\": \"M\",\n        \"date_of_birth\": \"1970-07-10\"\n    },\n    \"purpose\": \"Testing cards payout\",\n    \"currency\": \"GBP\",\n    \"merchantRef\": \"YOUR ORDER ID\", // optional\n    \"payoutMethod\": \"PAYOUT-CARDS\",\n    \"amount\": 100.0,\n    \"success_redirect\": \"https://your.success.redirect.com\",\n    \"pending_redirect\": \"https://your.pending.redirect.com\",\n    \"failure_redirect\": \"https://your.failure.redirect.com\",\n    \"success_callback\": \"https://your.success.callback.com\",\n    \"failure_callback\": \"https://your.failure.callback.com\",\n    \"extraParam\": {\n        \"token_reference\": \"token_ref\"\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/payout/","description":"<h2 id=\"overview\">Overview</h2>\n<p>The <strong>Original Credit Transaction (OCT)</strong>, commonly referred to as <strong>Push to Card</strong>, enables merchants to facilitate near-instantaneous fund transfers directly to a customer’s eligible Visa or Mastercard debit or credit card. Unlike traditional refund processes that can only return funds from a previous purchase, OCT allows for independent disbursements of funds to a cardholder's account.</p>\n<p>This feature is designed for high-velocity industries that require frictionless, real-time payouts, such as:</p>\n<ul>\n<li><p><strong>Gaming &amp; Betting:</strong> Real-time withdrawal of player winnings.</p>\n</li>\n<li><p><strong>Marketplaces:</strong> Payouts to sellers or service providers.</p>\n</li>\n<li><p><strong>Corporate Disbursements:</strong> Instant insurance claims, rebates, or compensation payments.</p>\n</li>\n<li><p><strong>Merchant Settlements:</strong> Faster access to processed funds for sub-merchants.</p>\n</li>\n</ul>\n<p>By utilizing the Paybomb <code>/payout</code> API with the <code>PAYOUT-CARDS</code> method, you benefit from a unified orchestration layer that handles the complexities of card network routing, ensuring high success rates and global reach while maintaining the same security standards as your standard payment integrations.</p>\n<hr />\n<h2 id=\"integration-steps\">Integration Steps</h2>\n<ol>\n<li><p><strong>Enable OCT:</strong> Ensure \"Push to Card\" permissions are enabled for your merchant account in the Paybomb Merchant Portal.</p>\n</li>\n<li><p><strong>Collect Card Details:</strong> Use a secure method to collect the recipient's card number and expiry date or can you Paybomb's cashier to do that.</p>\n</li>\n<li><p><strong>Execute Payout:</strong> Call the <code>/payout</code> endpoint with the OCT-specific payout method.</p>\n</li>\n<li><p><strong>Handle Webhooks:</strong> Listen for the <code>paid</code> or <code>failure</code> events to update your internal records.</p>\n</li>\n</ol>\n<h3 id=\"mandatory-parameters-in-the-request-body\"><strong>Mandatory parameters in the request body:</strong></h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Notes</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>client.email</td>\n<td>Yes</td>\n<td>The customer's email.  <br />Please send it in small case.</td>\n</tr>\n<tr>\n<td>client.phone</td>\n<td>Yes</td>\n<td>The customer's phone number along with the country code.  <br />Example: +91 9634088651</td>\n</tr>\n<tr>\n<td>client.city</td>\n<td>Yes</td>\n<td>The customer's city.</td>\n</tr>\n<tr>\n<td>client.country</td>\n<td>Yes</td>\n<td>ISO-3166 Country Code. Must be upper case. Example “SG” (Alpha2)</td>\n</tr>\n<tr>\n<td>client.stateCode</td>\n<td>Optional</td>\n<td>Example “AL”, “XZ”. Must be in upper case.</td>\n</tr>\n<tr>\n<td>Client.street_address</td>\n<td>Optional</td>\n<td>The customer's address.</td>\n</tr>\n<tr>\n<td>client.zip_code</td>\n<td>Optional</td>\n<td>The customer's ZIP or postal code. If country=US, zip format must be NNNNN or NNNNN-NNNN.</td>\n</tr>\n<tr>\n<td>currency</td>\n<td>Yes</td>\n<td>ISO 4217 code for currency you want to send the transaction in.  <br />  <br />Please note, the currency has to be enabled by the account manager for your account.</td>\n</tr>\n<tr>\n<td>amount</td>\n<td>Yes</td>\n<td>amount in decimal format.  <br />example 1:  <br />EUR 5 , should be sent as 5.00  <br />  <br />example 2:  <br />USD 10 and 37 cents , should be sent as 10.37</td>\n</tr>\n<tr>\n<td>payoutMethod</td>\n<td>Optional</td>\n<td>example: PAYOUT-CARDS</td>\n</tr>\n<tr>\n<td>success_redirect</td>\n<td>Yes</td>\n<td>URL to send the user if the transactions is successful.</td>\n</tr>\n<tr>\n<td>pending_redirect</td>\n<td>Yes</td>\n<td>URL to send the user if the transactions is in pending.</td>\n</tr>\n<tr>\n<td>failure_redirect</td>\n<td>Yes</td>\n<td>URL to send the user if the transactions is unsuccessful.</td>\n</tr>\n<tr>\n<td>Purpose</td>\n<td>Optional</td>\n<td>The purpose of doing a payout.</td>\n</tr>\n<tr>\n<td>extraParam.token_reference</td>\n<td>Yes</td>\n<td>Paybomb Token</td>\n</tr>\n</tbody>\n</table>\n</div><p>Note:</p>\n<p>If the merchant is not PCI DSS compliant then they will need to use our <strong>cashier</strong> and we will show the user all the saved cards for him/her. Based on the card chosen, Paybomb will pick up the token_reference from our Back end.</p>\n<p>If the merchant is PCI DSS compliant then they can use the payout API and send the token reference as shown above.</p>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"53bb72ca-bd42-41cd-a2a7-d4a24841bd4e","id":"53bb72ca-bd42-41cd-a2a7-d4a24841bd4e","name":"APIs","type":"folder"}},"urlObject":{"path":["payout",""],"host":["https://app.paybomb.tech/api/v1"],"query":[],"variable":[]}},"response":[{"id":"17249c81-3911-4914-b294-09817233a990","name":"Success","originalRequest":{"method":"POST","header":[{"key":"Accept","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"client\": {\n        \"email\": \"rahul@gmail.com\",\n        \"country\": \"GB\",\n        \"city\": \"London\",\n        \"stateCode\": \"QLD\",\n        \"full_name\": \"Rahul Jain\",\n        \"street_address\": \"10 New Burlington Street Apt. 214\",\n        \"zip_code\": \"W1S 3BE\",\n        \"phone\": \"+44 9876543210\",\n        \"gender\": \"M\",\n        \"date_of_birth\": \"1970-07-10\"\n    },\n    \"purpose\": \"Testing cards payout\",\n    \"currency\": \"GBP\",\n    \"merchantRef\": \"YOUR ORDER ID\", // optional\n    \"payoutMethod\": \"PAYOUT-CARDS\",\n    \"amount\": 100.0,\n    \"success_redirect\": \"https://your.success.redirect.com\",\n    \"pending_redirect\": \"https://your.pending.redirect.com\",\n    \"failure_redirect\": \"https://your.failure.redirect.com\",\n    \"success_callback\": \"https://your.success.callback.com\",\n    \"failure_callback\": \"https://your.failure.callback.com\",\n    \"extraParam\": {\n        \"token_reference\": \"token_ref\"\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/payout/"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"Text","header":[{"key":"Date","value":"Fri, 13 Mar 2026 00:01:17 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"Nel","value":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}"},{"key":"X-Frame-Options","value":"ALLOW-FROM *"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"x-session-id","value":"3ef27476-f274-4f6a-bb18-4c37e01d6dc2"},{"key":"Vary","value":"Origin"},{"key":"Vary","value":"Access-Control-Request-Method"},{"key":"Vary","value":"Access-Control-Request-Headers"},{"key":"Server","value":"cloudflare"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"0"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 05a63efd5ebb043211ccf075f3a8aa68.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"IAD61-P10"},{"key":"X-Amz-Cf-Id","value":"Iw6KuTkxZqm0RH8GJOXAh7uLEPJ6wj8OJbaFWdN_qDx31b5TSinnIA=="},{"key":"cf-cache-status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=g%2FW8jRMDFXKvTeXNugr1sgR4%2FoTXfyEHsscr3hqeIr2aPhFEVlSs%2FGiTjFw09%2BReVDjxT2esg2Wg0fdBf4oD3snlEv4p1JkITe2l7oLC%2Bkg%3D\"}]}"},{"key":"CF-RAY","value":"9db6c366997196a2-IAD"}],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":"{\n    \"payoutId\": \"6977137755e0628e3600c562\",\n    \"client\": {\n        \"email\": \"rahul@gmail.com\",\n        \"country\": \"GB\",\n        \"city\": \"London\",\n        \"stateCode\": \"QLD\",\n        \"full_name\": \"Rahul Jain\",\n        \"street_address\": \"10 New Burlington Street Apt. 214\",\n        \"zip_code\": \"W1S 3BE\",\n        \"phone\": \"+44 9876543210\",\n        \"gender\": \"M\",\n        \"date_of_birth\": \"1970-07-10\"\n    },\n    \"updated_on\": 1769411447,\n    \"extraParam\": {\n        \"token_reference\": \"token_ref\"\n    },\n    \"payoutMethod\": \"PAYOUT-CARDS\",\n    \"amountUnit\": \"MAJOR\",\n    \"amount\": 100.0,\n    \"errorMsg\": \"\",\n    \"purpose\": \"Testing cards payout\",\n    \"created_on\": 1769411447,\n    \"merchantRef\": \"YOUR ORDER ID\",\n    \"status\": \"PAID\",\n    \"status_history\": [\n        {\n            \"status\": \"created\",\n            \"timestamp\": 1769411447\n        },\n        {\n            \"status\": \"payout_in_process\",\n            \"timestamp\": 1769411447\n        },\n        {\n            \"status\": \"paid\",\n            \"timestamp\": 1769411447\n        },\n\n    ],\n    \"currency\": \"GBP\",\n    \"extraFee\": \"0\",\n    \"paymentOn\": 0,\n    \"checkout_url\": \"https://test4.paymentsclub.net/payout/092e59f94279a3742fa3715fe9a2112a/\",\n    \"taxAmount\": 0.0,\n    \"taxPercent\": 0.0,\n    \"success_redirect\": \"https://your.success.redirect.com\",\n    \"pending_redirect\": \"https://your.pending.redirect.com\",\n    \"failure_redirect\": \"https://your.failure.redirect.com\",\n    \"success_callback\": \"https://your.success.callback.com\",\n    \"failure_callback\": \"https://your.failure.callback.com\"\n    \"redirectType\": \"POST\",\n    \"sessionId\": \"\",\n    \"surcharge\": 0.0,\n    \"surchargeType\": \"\",\n    \"trxMethod\": \"CARDS\",\n    \"success_callback\": \"\",\n    \"failure_callback\": \"\"\n}"}],"_postman_id":"d085eb3f-9e33-47d7-9597-7c599fc1429a"}],"id":"53bb72ca-bd42-41cd-a2a7-d4a24841bd4e","description":"<p>Network tokenisation in Paybomb uses four APIs. Together they cover the complete flow: retrieving saved cards, initiating a purchase (with card saving), processing payments with saved tokens, and deleting tokens.</p>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"e0f0e3dd-f789-44be-91f6-a554a4a3646d"}},{"listen":"test","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"bce47c94-c2e1-4dc9-bdc1-f2e2191aada1"}}],"_postman_id":"53bb72ca-bd42-41cd-a2a7-d4a24841bd4e"},{"name":"FAQs","item":[],"id":"3d0d9e4d-98bd-4c4b-bfba-19efaae5db3e","description":"<p><strong>Q1: Do I need to change my existing integration to use network tokenisation?</strong><br />No. If you already use the Paybomb Purchase API and the S2S API with token_reference, your integration is already compatible. You just need to enable and configure network tokenisation in your Dashboard (see Section 3).</p>\n<p><strong>Q2: What is a token_reference?</strong><br />A token_reference (e.g., token_7178aa7208614544a285656da38aefac) is Paybomb’s internal identifier for a saved card. You use it to charge the saved card or delete it. It is not the card number or the network token — Paybomb manages those internally.</p>\n<p><strong>Q3: Does the token_reference expire?</strong><br />No. The token_reference does not expire. It remains valid as long as the saved card has not been deleted.</p>\n<p><strong>Q4: What happens when a customer’s card expires or is replaced?</strong></p>\n<p>The card network automatically updates the data linked to the token. Your token_reference stays the same, and payments continue to work without action from you or the customer.</p>\n<p><strong>Q5: Is CVC required even when using a token_reference?</strong><br />Yes. CVC is required even when a token_reference is provided. This is needed for 3D Secure authentication on customer-initiated transactions.</p>\n<p><strong>Q6: What if a card doesn’t support network tokenisation?</strong><br />Paybomb handles this automatically. If a card is not eligible, or if the selected MID does not accept tokens, Paybomb falls back to the card number. The API response and flow remain the same.</p>\n<p><strong>Q7: How long does the token service setup take?</strong><br />After saving your configuration in Dashboard → Global Settings → Paybomb Token Service, the status changes to Pending. It may take up to 1 hour to update to Active. Do not use tokenisation APIs until the status is Active.</p>\n<p><strong>Q8: Are email addresses case-sensitive for token lookup?</strong><br />Yes. Email addresses are case-sensitive. Ensure consistent formatting (always lowercase) when creating and retrieving tokens to avoid duplicate or missing entries.</p>\n<p><strong>Q9: How do I delete a saved card?</strong><br />Use the Delete Token API (DELETE /tokens/v1/deleteToken/{token_reference}). This permanently removes the card and deactivates the network token.</p>\n<p><strong>Q10: Is there an additional cost?</strong><br />Pricing details are communicated by your Paybomb account manager. Some card networks offer reduced interchange fees for tokenised transactions, which may offset service costs.</p>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"39619a45-f92c-4943-8b8c-1617ff9c938c"}},{"listen":"test","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"96aee18b-d871-4947-98b4-60f771dceb8f"}}],"_postman_id":"3d0d9e4d-98bd-4c4b-bfba-19efaae5db3e"}],"id":"1bec4acc-e8d6-4e7e-82c2-ce1b0bb21e53","description":"<h2 id=\"overview\">Overview</h2>\n<p>Paybomb supports Network Tokenisation to help merchants process card payments with improved security, higher authorisation rates, and seamless card lifecycle management.</p>\n<p>Network tokenisation works entirely behind the scenes. When a cardholder saves their card during a purchase, Paybomb securely provisions a network token and returns a <code>token_reference</code>. You use this reference for all future payments — you never handle actual card numbers or network tokens directly.</p>\n<h2 id=\"benefits\">Benefits</h2>\n<ul>\n<li><p><strong>Higher Approval Rates</strong> — Payments made with network tokens are recognised as more secure by issuers.</p>\n</li>\n<li><p><strong>Automatic Card Updates</strong> — Card replacements are handled silently by the card network.</p>\n</li>\n<li><p><strong>Stronger Security</strong> — Each token is merchant-specific and protected by a per-transaction cryptogram.</p>\n</li>\n<li><p><strong>Reduced PCI Burden</strong> — Store <code>token_reference</code> instead of card numbers.</p>\n</li>\n<li><p><strong>Zero Integration Overhead</strong> — Your existing API integration works as-is.</p>\n</li>\n</ul>\n<h2 id=\"api-flow\">API Flow</h2>\n<p>Network tokenisation is fully managed by Paybomb. The integration follows the standard Paybomb payment APIs:</p>\n<h3 id=\"the-merchant-flow\">The Merchant Flow</h3>\n<ol>\n<li><p>Call the List Saved Cards API to check if the customer has saved cards</p>\n</li>\n<li><p>If no saved cards exist, initiate a new payment via the Purchase + S2S API<br /> → If the merchant opts to save the customer card, Paybomb provisions a network token<br /> → Customer completes payment<br /> → A token_reference is generated and linked to the customer and card</p>\n</li>\n<li><p>For returning customers with saved cards:<br /> → Display saved cards using cardlast4 from List Saved Cards<br /> → Customer selects a card and provides CVC<br /> → Submit token_reference + CVC via the purchase + S2S API</p>\n</li>\n<li><p>To remove a saved card, call the Delete Token API.</p>\n</li>\n</ol>\n<p>Network tokenisation happens behind the scenes with no additional API calls and no changes to your existing flow.</p>\n<ol>\n<li><p><strong>List Saved Cards</strong> — Check if the customer has saved cards</p>\n</li>\n<li><p><strong>Purchase</strong> — Initiate a new payment (customer can save card during checkout)</p>\n</li>\n<li><p><strong>S2S Payment</strong> — Charge a saved card using <code>token_reference</code></p>\n</li>\n<li><p><strong>Delete Token</strong> — Remove a saved card permanently</p>\n</li>\n</ol>\n<h3 id=\"key-takeaway\">Key Takeaway</h3>\n<p>You never see or handle the actual network token. Paybomb abstracts it entirely behind the token_reference. Your integration stays simple while your customers get the security and reliability benefits of network tokenisation.</p>\n<h2 id=\"environments\">Environments</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Environment</th>\n<th>Base URL</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Sandbox</td>\n<td><code>https://app.paybomb.tech/api/v1</code>  <br />Note: set the Sandbox flag true (checked) in your merchant account. As shown in the image below</td>\n</tr>\n<tr>\n<td>Production</td>\n<td><code>https://app.paybomb.tech/api/v1</code></td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"14af3519-9c6a-475c-bc3b-d6ab7977eea7"}},{"listen":"test","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"013fa7b4-bc70-4b79-adfa-9daa71296761"}}],"_postman_id":"1bec4acc-e8d6-4e7e-82c2-ce1b0bb21e53"},{"name":"Pre Authorization","item":[{"name":"Prerequisites","item":[],"id":"e160549d-ac12-4f5b-900d-6046cd82829e","description":"<p>Before integrating the pre-authorisation flow, ensure you have the following:</p>\n<h3 id=\"21-account-setup\"><strong>2.1 Account Setup</strong></h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Requirement</strong></th>\n<th><strong>Details</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Paybomb Merchant Account</td>\n<td>An active merchant account with API access enabled.</td>\n</tr>\n<tr>\n<td>API Key</td>\n<td>Your unique API key, available from Dashboard → API Keys.</td>\n</tr>\n<tr>\n<td>Brand ID</td>\n<td>Your brand identifier, found in Dashboard → Account Settings.</td>\n</tr>\n<tr>\n<td>Webhook URL (Recommended)</td>\n<td>A publicly accessible HTTPS endpoint to receive transaction status updates.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"22-environments\"><strong>2.2 Environments</strong></h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Environment</th>\n<th>Base URL</th>\n<th>Notes</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Sandbox</td>\n<td><a href=\"https://app.paybomb.tech/api/v1\">https://app.paybomb.tech/api/v1</a></td>\n<td>Set the Sandbox flag to true in your merchant account.</td>\n</tr>\n<tr>\n<td>Production</td>\n<td><a href=\"https://app.paybomb.tech/api/v1\">https://app.paybomb.tech/api/v1</a></td>\n<td>Live transactions. Ensure KYB verification is complete.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"23-authentication\"><strong>2.3 Authentication</strong></h3>\n<p>All API requests must include your API key in the request header.<br />Paybomb uses bearer token authentication.</p>\n<p>Authorization: Bearer {your_api_key}</p>\n<p>Content-Type: application/json</p>\n<p>Important: Never expose your API key in client-side code or public repositories. All API calls must be made server-to-server.</p>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"b4b1340d-5e79-4d2a-815e-660a43ec5c13"}},{"listen":"test","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"9541f143-d53a-4aec-94c9-941dfe5bb572"}}],"_postman_id":"e160549d-ac12-4f5b-900d-6046cd82829e"},{"name":"Payment Flow Overview","item":[],"id":"d857cd6c-5a92-4966-bbda-cab07788ec76","description":"<p>The pre-authorisation and capture flow involves three distinct stages. Below is a high-level summary of each path the transaction can follow after authorisation.</p>\n<h2 id=\"31-flow-summary\">3.1 Flow Summary</h2>\n<p>Step 1 - The merchant sends a pre-authorisation request to reserve funds on the customer’s card. If successful, the transaction enters an AUTHORISED state.</p>\n<p>Step 2a (Capture Path) - The merchant sends a capture request for the full or partial authorised amount. On success, the transaction moves to CAPTURED and funds are settled.</p>\n<p>Step 2b (Void Path) - If the merchant no longer needs to collect the payment, they send a void request. The hold is released and the transaction moves to VOIDED.</p>\n<h2 id=\"32-state-transition-diagram\"><strong>3.2 State Transition Diagram</strong></h2>\n<p>The following diagram describes all possible states:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>From State</strong></th>\n<th><strong>Action</strong></th>\n<th><strong>To State (Terminal)</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>CREATED</td>\n<td>Pre-Authorise</td>\n<td>PREAUTHORIZED</td>\n<td>Funds are held on the customer’s card.</td>\n</tr>\n<tr>\n<td>PREAUTHORIZED</td>\n<td>Capture (Full)</td>\n<td>PAID</td>\n<td>Full authorised amount is settled.</td>\n</tr>\n<tr>\n<td>PREAUTHORIZED</td>\n<td>Capture (Partial)</td>\n<td>PARTIALLY_CAPTURED</td>\n<td>Part of the authorised amount is settled; remainder released.</td>\n</tr>\n<tr>\n<td>PREAUTHORIZED</td>\n<td>Void</td>\n<td>CANCELLED</td>\n<td>Hold is released. No funds are collected.</td>\n</tr>\n<tr>\n<td>PREAUTHORIZED</td>\n<td>(Expiry)</td>\n<td>EXPIRED</td>\n<td>Authorisation window elapsed without capture. Funds auto-released. 30 days default.</td>\n</tr>\n<tr>\n<td>PAID</td>\n<td>Refund</td>\n<td>REFUNDED</td>\n<td>Post-capture return of funds (separate API).</td>\n</tr>\n<tr>\n<td>PARTIALLY_CAPTURED</td>\n<td>Refund</td>\n<td>PARTIALLY_REFUNDED</td>\n<td>Post partial capture return of funds (separate API).</td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>ℹ️ Note</strong></p>\n<p>Once a transaction is PAID or VOIDED, it cannot be reversed through this flow. Use the Refund API for post-capture reversals.</p>\n<h2 id=\"33-authorisation-validity-periods\"><strong>3.3 Authorisation Validity Periods</strong></h2>\n<p>Card networks enforce maximum hold periods. If you do not capture within the validity window, the authorisation expires automatically and funds are released.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Card Scheme</strong></th>\n<th><strong>Standard Hold Period</strong></th>\n<th><strong>Extended Hold (if available)</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Visa</td>\n<td>7 days</td>\n<td>Up to 30 days (select MCCs)</td>\n</tr>\n<tr>\n<td>Mastercard</td>\n<td>7 days</td>\n<td>Up to 30 days (select MCCs)</td>\n</tr>\n<tr>\n<td>American Express</td>\n<td>7 days</td>\n<td>Up to 30 days</td>\n</tr>\n<tr>\n<td>Discover</td>\n<td>10 days</td>\n<td><strong>N/A</strong></td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>⚠️ Best Practice</strong></p>\n<p>Capture as soon as the order is ready to ship or the service is delivered. Delaying capture increases the risk of authorisation expiry and declines.</p>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"659d03d3-e86c-4de8-8734-298d55406625"}},{"listen":"test","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"24a293f0-465e-4f80-8a65-81be66fca998"}}],"_postman_id":"d857cd6c-5a92-4966-bbda-cab07788ec76"},{"name":"APIs","item":[{"name":"Purchase","id":"83eeaa20-73b3-4e74-ad3b-9c5bb88bb855","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"client\": {\r\n        \"email\": \"example@paybomb.tech\",\r\n        \"country\": \"IN\",\r\n        \"city\": \"123\",\r\n        \"stateCode\": \"ca\",\r\n        \"street_address\": \"test test\",\r\n        \"zip_code\": \"234567\",\r\n        \"phone\": \"+91 9999999999\"\r\n    },\r\n    \"purchase\": {\r\n        \"products\": [\r\n            {\r\n                \"name\": \"dk\",\r\n                \"price\": \"10\"\r\n            }\r\n        ]\r\n    },\r\n    \"status\": \"created\",\r\n    \"brand_id\": \"bd69e8a5-adcf-40de-9e43-2b87cb129a5e\",\r\n    \"skip_capture\": true,\r\n    \"merchantRef\": \"d9db7ec0-f94c-4a9d-8883-54c19c222d81\",\r\n    \"success_redirect\": \"https://your.success.redirect.com\",\r\n    \"pending_redirect\": \"https://your.pending.redirect.com\",\r\n    \"failure_redirect\": \"https://your.failure.redirect.com\",\r\n    \"success_callback\": \"https://your.success.callback.com\",\r\n    \"failure_callback\": \"https://your.failure.callback.com\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/purchases","description":"<p>Use this endpoint to authorise a payment without capturing it. This places a temporary hold on the customer’s funds for the specified amount.</p>\n<p>To Initiate a payment, the very first call to make is <code>/purchases</code> with the required data in the request body.</p>\n<p>To generate a Purchase, you are required to provide the <code>Brand ID</code> (in the request body) and <code>API key</code> (in the header) Both can be located in the Dashboard section of your merchant account login.</p>\n<p>The request body structure is shown on the request body of the example request shown here.</p>\n<p>The following (see table below) are the mandatory parameters that are required to create a purchase request.</p>\n<h3 id=\"mandatory-parameters-in-the-request-body\"><strong>Mandatory parameters in the request body:</strong></h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Notes</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>client.email</td>\n<td>The customer's email.</td>\n</tr>\n<tr>\n<td>client.city</td>\n<td>The customer's city.</td>\n</tr>\n<tr>\n<td>client.country</td>\n<td>ISO-3166 Country Code. Must be upper case. Example “SG” (Alpha2)</td>\n</tr>\n<tr>\n<td>client.stateCode</td>\n<td>Example “AL”, “XZ”. Must be in upper case.</td>\n</tr>\n<tr>\n<td>Client.street_address</td>\n<td>The customer's address.</td>\n</tr>\n<tr>\n<td>client.zip_code</td>\n<td>The customer's ZIP or postal code. If country=US, zip format must be NNNNN or NNNNN-NNNN.</td>\n</tr>\n<tr>\n<td>purchase.currency</td>\n<td>ISO 4217 code for currency you want to send the transaction in.  <br />  <br />Please note, the currency has to be enabled by the account manager for your account.</td>\n</tr>\n<tr>\n<td>purchase.products</td>\n<td>An object which contains the list of products which the customer is buying.</td>\n</tr>\n<tr>\n<td>purchase.products.name</td>\n<td>The name of the product.</td>\n</tr>\n<tr>\n<td>purchase.products.price</td>\n<td>Price in decimal format.  <br />example 1:  <br />EUR 5 , should be sent as 5.00  <br />  <br />example 2:  <br />USD 10 and 37 cents , should be sent as 10.37</td>\n</tr>\n<tr>\n<td>brand_id</td>\n<td>Obtain from Dashboard section of your merchant account login.</td>\n</tr>\n<tr>\n<td>success_redirect</td>\n<td>URL to send the user if the transactions is successful.</td>\n</tr>\n<tr>\n<td>pending_redirect</td>\n<td>URL to send the user if the transactions is in pending.</td>\n</tr>\n<tr>\n<td>failure_redirect</td>\n<td>URL to send the user if the transactions is unsuccessful.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"additional-parameters-for-this-usecase\"><strong>Additional parameters for this usecase:</strong></h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Notes</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>skip_capture</td>\n<td>true</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"essential-optional-parameters\">Essential Optional Parameters</h2>\n<h3 id=\"merchantref\">merchantRef</h3>\n<p>The <code>merchantRef</code> parameter, although not mandatory, is strongly advised for merchants to specify. Its inclusion offers two significant advantages for the merchant:</p>\n<ol>\n<li><p><strong>Prevention of Duplicate Requests:</strong> When a <code>merchantRef</code> is utilized, it acts as a unique identifier. This means that if a second purchase request is made using the same <code>merchantRef</code> (reference number), the system will recognize it and prevent duplicate transactions from occurring. This prevents unintended or duplicate purchases.</p>\n</li>\n<li><p><strong>Facilitation of Transaction Retrieval:</strong> In situations where the response from the initial purchase request times out or the 'purchaseId' isn't received, having the <code>merchantRef</code> allows the merchant to retrieve detailed transaction information. This ensures they can track and access the specific purchase details related to that reference, even if the immediate response was not received.</p>\n</li>\n</ol>\n<p>However, if the merchant does not specify the 'merchantRef' parameter, the platform will automatically assign and use an internal 'purchaseId' as a reference for that transaction.</p>\n<p>Upon successul create on a Purchase you'd get a <code>\"purchaseId\"</code> . Use this ID for the next step in Server to server call by calling <code>p/{purchaseId}/?s2s=true .</code></p>\n<h3 id=\"paymentmethod\">paymentMethod</h3>\n<p>The <code>paymentMethod</code> parameter identifies which payment solution merchant wants to use to perform a transaction. If parameter is provided, than Paybomb will perform direct payment with the selected payment method instead of loading Paybomb URL.</p>\n<h3 id=\"errors\">Errors</h3>\n<p>If there are any errors then it'll be in the format of :</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"message\": \"descriptive error message\",\n    \"code\": \"error_code\"\n}\n\n</code></pre>\n<h3 id=\"possible-error-messages\">Possible Error Messages</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Error Messages</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Allowed Limit for this card for particular time period has been consumed</td>\n</tr>\n<tr>\n<td>some Mandatory Parameter are missing</td>\n</tr>\n<tr>\n<td>Invalid format of Date_of_Birth [allowed format: yyyy-mm-dd]</td>\n</tr>\n<tr>\n<td>Invalid Email Format</td>\n</tr>\n<tr>\n<td>Please submit Valid Alpha2 Country Code Ex:(AF,IN) in \\\"country\\\" parameter</td>\n</tr>\n<tr>\n<td>Please pass Valid State Code</td>\n</tr>\n<tr>\n<td>Please pass valid street address in \\\"street_address\\\" parameter</td>\n</tr>\n<tr>\n<td>Please pass valid city name in \\\"city\\\" parameter</td>\n</tr>\n<tr>\n<td>Please pass valid postal Code name in \\\"zip_code\\\" parameter</td>\n</tr>\n<tr>\n<td>You are not Allowed for Live Transaction</td>\n</tr>\n<tr>\n<td>Merchant Limit is not set</td>\n</tr>\n<tr>\n<td>Minimum amount is not set for this merchant</td>\n</tr>\n<tr>\n<td>Brand not found !</td>\n</tr>\n<tr>\n<td>Your charges setting is incomplete .Plese Contact to Administrator.</td>\n</tr>\n<tr>\n<td>Only {{currencyCode}} currency is allowed.</td>\n</tr>\n<tr>\n<td>Transaction amount must be equal or greater to minimum trans amount</td>\n</tr>\n<tr>\n<td>Invalid_Parameter  <br />You'd usually get it when one or more mandatory parameters are not present in the request.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"55300479-5b71-4b30-84e2-5ba8021bff9c","id":"55300479-5b71-4b30-84e2-5ba8021bff9c","name":"APIs","type":"folder"}},"urlObject":{"path":["purchases"],"host":["https://app.paybomb.tech/api/v1"],"query":[],"variable":[]}},"response":[{"id":"52a7f833-b6db-44d9-9910-77abc5e302aa","name":"Purchase","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"client\": {\r\n        \"email\": \"example@paybomb.tech\",\r\n        \"country\": \"IN\",\r\n        \"city\": \"123\",\r\n        \"stateCode\": \"ca\",\r\n        \"street_address\": \"test test\",\r\n        \"zip_code\": \"234567\",\r\n        \"phone\": \"+91 9999999999\"\r\n    },\r\n    \"purchase\": {\r\n        \"products\": [\r\n            {\r\n                \"name\": \"dk\",\r\n                \"price\": \"10\"\r\n            }\r\n        ]\r\n    },\r\n    \"status\": \"created\",\r\n    \"brand_id\": \"bd69e8a5-adcf-40de-9e43-2b87cb129a5e\",\r\n    \"skip_capture\": true,\r\n    \"merchantRef\": \"d9db7ec0-f94c-4a9d-8883-54c19c222d81\",\r\n    \"success_redirect\": \"https://your.success.redirect.com\",\r\n    \"pending_redirect\": \"https://your.pending.redirect.com\",\r\n    \"failure_redirect\": \"https://your.failure.redirect.com\",\r\n    \"success_callback\": \"https://your.success.callback.com\",\r\n    \"failure_callback\": \"https://your.failure.callback.com\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/purchases"},"status":"Accepted","code":202,"_postman_previewlanguage":"json","header":[{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"X-Frame-Options","value":"DENY"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Date","value":"Thu, 13 Jul 2023 17:22:14 GMT"},{"key":"Keep-Alive","value":"timeout=60"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{\n    \"purchaseId\": \"64b032c3c6dccf7d329d9e7e\",\n    \"client\": {\n        \"bank_account\": \"\",\n        \"bank_code\": \"\",\n        \"email\": \"dev@paybomb.tech\",\n        \"phone\": \"\",\n        \"full_name\": \"\",\n        \"date_of_birth\": \"\",\n        \"personal_code\": \"\",\n        \"street_address\": \"test test\",\n        \"country\": \"IN\",\n        \"city\": \"123\",\n        \"zip_code\": \"234567\",\n        \"shipping_street_address\": \"\",\n        \"shipping_country\": \"\",\n        \"shipping_city\": \"\",\n        \"shipping_zip_code\": \"\",\n        \"cc\": [],\n        \"bcc\": [],\n        \"legal_name\": \"\",\n        \"brand_name\": \"\",\n        \"registration_number\": \"\",\n        \"tax_number\": \"\",\n        \"stateCode\": \"ca\"\n    },\n    \"updated_on\": 1689268934,\n    \"type\": \"purchase\",\n    \"force_recurring\": false,\n    \"created_on\": 1689268934,\n    \"purchase\": {\n        \"currency\": \"USD\",\n        \"products\": [\n            {\n                \"name\": \"dk\",\n                \"quantity\": 1,\n                \"price\": 10,\n                \"discount\": 0,\n                \"tax_percent\": \"0.00\"\n            }\n        ],\n        \"total\": 10,\n        \"language\": \"en\",\n        \"notes\": \"\",\n        \"debt\": 0,\n        \"total_formatted\": 1,\n        \"request_client_details\": [],\n        \"timezone\": \"America/Edmonton\",\n        \"email_message\": \"\"\n    },\n    \"issuer_details\": {\n        \"website\": \"\",\n        \"legal_street_address\": \"\",\n        \"legal_country\": \"\",\n        \"legal_city\": \"\",\n        \"legal_zip_code\": \"\",\n        \"bank_accounts\": [\n            {\n                \"bank_account\": \"\",\n                \"bank_code\": \"\"\n            }\n        ],\n        \"legal_name\": \"shoes\",\n        \"brand_name\": \"shoes\",\n        \"registration_number\": \"\",\n        \"tax_number\": \"\"\n    },\n    \"transaction_data\": {\n        \"payment_method\": \"\",\n        \"flow\": \"payform\",\n        \"extra\": {},\n        \"country\": \"\",\n        \"attempts\": []\n    },\n    \"status\": \"CREATED\",\n    \"status_history\": [\n        {\n            \"status\": \"created\",\n            \"timestamp\": 1689268934\n        }\n    ],\n    \"is_test\": false,\n    \"brand_id\": \"bd69e8a5-adcf-40de-9e43-2b87cb129a5e\",\n    \"is_recurring_token\": false,\n    \"reference_generated\": \"PS161\",\n    \"merchantRef\":\"d9db7ec0-f94c-4a9d-8883-54c19c222d81\",\n    \"issued\": \"2023-07-13\",\n    \"due\": 1689268934,\n    \"refund_upto\": 0,\n    \"cc_descriptor\": \"\",\n    \"refund_availability\": \"NONE\",\n    \"refundable_amount\": 0,\n    \"success_redirect\": \"https://your.success.redirect.com\",\n    \"failure_redirect\": \"https://your.failure.redirect.com\",\n    \"cancel_redirect\": \"\",\n    \"success_callback\": \"\",\n    \"platform\": \"API\",\n    \"created_from_ip\": \"149.86.53.48\",\n    \"checkout_url\": \"http://18.214.100.20/payments/64b032c3c6dccf7d329d9e7e/\",\n    \"direct_post_url\": \"http://18.214.100.20/api/v1/p/64b032c3c6dccf7d329d9e7e/\"\n}"}],"_postman_id":"83eeaa20-73b3-4e74-ad3b-9c5bb88bb855"},{"name":"S2S","id":"38a27849-024f-4407-83e2-744ba0d22dce","protocolProfileBehavior":{"disableUrlEncoding":false,"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"cardholder_name\": \"dk\",\r\n    \"card_number\": \"4111111111111111\",\r\n    \"expires\": \"10/23\",\r\n    \"cvc\": \"345\",\r\n    \"remember_card\": \"on\",\r\n    \"remote_ip\": \"157.38.242.7\",\r\n    \"user_agent\": \"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36\",\r\n    \"accept_header\": \"text/html\",\r\n    \"language\": \"en-US\",\r\n    \"java_enabled\": false,\r\n    \"javascript_enabled\": true,\r\n    \"color_depth\": 24,\r\n    \"utc_offset\": 0,\r\n    \"screen_width\": 1920,\r\n    \"screen_height\": 1080\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/p/64bff4fff63e36669499e9c8/?s2s=true","description":"<p>This API would be the 2nd in sequence to call if the call to <code>/purchases/</code> was successful in step 1. and you want to do the transaction via Server-to-Server mode.</p>\n<p>The request body would contain the details of the card that's to be transacted upon.</p>\n<h3 id=\"mandatory-parameters-in-request-body\"><strong>Mandatory parameters in request body:</strong></h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th><strong>Notes</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>remote_ip</td>\n<td>IP address of the customer’s device used for transaction. Helps in fraud checks and risk scoring. Ex- 157.38.242.7</td>\n</tr>\n<tr>\n<td>user_agent</td>\n<td>Full browser and operating system details captured from HTTP header. EX- Chrome/5.0 (X11; Linux x86_64)</td>\n</tr>\n<tr>\n<td>accept_header</td>\n<td>Browser’s accepted content types (from HTTP header). Used for validating request origin and device info. EX- text/html</td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>Note:</strong><br />If you want to use token_reference for doing a card transaction, please have a look at Network Tokenisation Section.</p>\n<h3 id=\"essential-parameters-in-request-body\"><strong>Essential parameters in request body:</strong></h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th><strong>Notes</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>cardholder_name</td>\n<td>Name of the cardholder</td>\n</tr>\n<tr>\n<td>card_number</td>\n<td>The card numbers Must be 10-20 characters.</td>\n</tr>\n<tr>\n<td>expires</td>\n<td>must be greater than the current month/year.</td>\n</tr>\n<tr>\n<td>cvc</td>\n<td>3 or 4 digit</td>\n</tr>\n</tbody>\n</table>\n</div><p>**<br />Other optional parameters in request body:**</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th><strong>Notes</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>language</td>\n<td>Preferred language of the user’s browser . EX - en-US</td>\n</tr>\n<tr>\n<td>java_enabled</td>\n<td>Indicates if Java is enabled in the browser. Helps PSPs in device profiling. Ex- true/false</td>\n</tr>\n<tr>\n<td>javascript_enabled</td>\n<td>Indicates if JavaScript is enabled in the client browser. Used for 3DS or risk-based checks. Ex- true</td>\n</tr>\n<tr>\n<td>color_depth</td>\n<td>Bit depth of the display screen. Ex- 24</td>\n</tr>\n<tr>\n<td>utc_offset</td>\n<td>Difference in minutes between local time and UTC. Used for location and timezone checks. Ex- 330</td>\n</tr>\n<tr>\n<td>screen_width</td>\n<td>Width of the device screen in pixels. Used in device profiling. Ex- 1920</td>\n</tr>\n<tr>\n<td>screen_height</td>\n<td>Height of the device screen in pixels. Ex- 1080</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"successful-response\">Successful Response</h3>\n<p>If all the details are correct you'll get a 202 response with staus as Pending</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"status\": \"pending\",\n    \"callback_url\": \"https://app.paybomb.tech/payment/63bd0bf80fb42a076e8a4dd1/\",\n    \"method\": \"GET\"\n}\n\n</code></pre>\n<p>If the response code is 202, after receiving the response body, direct the customer to the callback_url provided in the response.</p>\n<h3 id=\"errors\">Errors</h3>\n<p>If there are any errors then it'll be in the format of :</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"message\": \"descriptive error message\",\n    \"code\": \"error_code\"\n}\n\n</code></pre>\n<p>Please see the Status Code section for further details.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Error Messages</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Client Ip could not be matched with Merchant Ip</td>\n</tr>\n<tr>\n<td>Invalid Card Information</td>\n</tr>\n<tr>\n<td>Card is Blocked</td>\n</tr>\n<tr>\n<td>Different Type of key used to create purchase and payment</td>\n</tr>\n<tr>\n<td>You charges setting is incomplete .Plese Contact to adminstrartor.</td>\n</tr>\n<tr>\n<td>Allowed Attempt for this Transaction has been consumed</td>\n</tr>\n<tr>\n<td>Invalid Card Expiry(Valid Format:MM/YY) must be greator than current month/year</td>\n</tr>\n<tr>\n<td>Customer profile is Blocked</td>\n</tr>\n<tr>\n<td>Customer/Card not allowed for transaction</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"55300479-5b71-4b30-84e2-5ba8021bff9c","id":"55300479-5b71-4b30-84e2-5ba8021bff9c","name":"APIs","type":"folder"}},"urlObject":{"path":["p","64bff4fff63e36669499e9c8",""],"host":["https://app.paybomb.tech/api/v1"],"query":[{"key":"s2s","value":"true"}],"variable":[]}},"response":[{"id":"64334509-500e-4a66-b587-0112e8faeb2a","name":"Success","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"cardholder_name\": \"dk\",\r\n    \"card_number\": \"411111111111111\",\r\n    \"expires\": \"10/23\",\r\n    \"cvc\": \"345\",\r\n    \"remember_card\": \"on\",\r\n    \"remote_ip\": \"157.38.242.7\",\r\n    \"user_agent\": \"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36\",\r\n    \"accept_header\": \"text/html\",\r\n    \"language\": \"en-US\",\r\n    \"java_enabled\": false,\r\n    \"javascript_enabled\": true,\r\n    \"color_depth\": 24,\r\n    \"utc_offset\": 0,\r\n    \"screen_width\": 1920,\r\n    \"screen_height\": 1080\r\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://app.paybomb.tech/api/v1/p/64bff4fff63e36669499e9c8/?s2s=true","host":["https://app.paybomb.tech/api/v1"],"path":["p","64bff4fff63e36669499e9c8",""],"query":[{"key":"s2s","value":"true"}]}},"status":"Accepted","code":202,"_postman_previewlanguage":"json","header":[{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"X-Frame-Options","value":"DENY"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Date","value":"Thu, 13 Jul 2023 17:31:55 GMT"},{"key":"Keep-Alive","value":"timeout=60"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"pending\",\n    \"callback_url\": \"http://18.214.100.20/api/v1/payment/64b034ecc6dccf7d329d9eb3/\",\n    \"method\": \"GET\"\n}"},{"id":"904b5b83-d52d-4ddb-8096-86aa1cccf611","name":"Failure","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json","type":"text"},{"key":"Authorization","value":"Bearer Token","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"cardholder_name\": \"dk\",\r\n    \"card_number\": \"4111111111111111\",\r\n    \"expires\": \"10/23\",\r\n    \"cvc\": \"345\",\r\n    \"remember_card\": \"on\",\r\n    \"remote_ip\": \"157.38.242.7\",\r\n    \"user_agent\": \"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36\",\r\n    \"accept_header\": \"text/html\",\r\n    \"language\": \"en-US\",\r\n    \"java_enabled\": false,\r\n    \"javascript_enabled\": true,\r\n    \"color_depth\": 24,\r\n    \"utc_offset\": 0,\r\n    \"screen_width\": 1920,\r\n    \"screen_height\": 1080\r\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://app.paybomb.tech/api/v1/p/64bff4fff63e36669499e9c8/?s2s=true","host":["https://app.paybomb.tech/api/v1"],"path":["p","64bff4fff63e36669499e9c8",""],"query":[{"key":"s2s","value":"true"}]}},"status":"Unauthorized","code":401,"_postman_previewlanguage":"Text","header":[{"key":"Date","value":"Tue, 06 Jan 2026 05:57:10 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"Nel","value":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}"},{"key":"X-Frame-Options","value":"ALLOW-FROM *"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"x-session-id","value":"cc434220-0bcd-42c7-9078-53503b81a221"},{"key":"Vary","value":"Origin"},{"key":"Vary","value":"Access-Control-Request-Method"},{"key":"Vary","value":"Access-Control-Request-Headers"},{"key":"Server","value":"cloudflare"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"0"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 9bce423254194c16408d5cf7234126e2.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"IAD61-P10"},{"key":"X-Amz-Cf-Id","value":"FgTt6KEGIk0CH79DQDOvB1tYb1pGfaz0ryIVmQ0CCpDShyhsJGuAkA=="},{"key":"cf-cache-status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=9SnHJOEjnd1y7hArGsRLWmrk8H9ExaiR%2Fc%2BQMWhAvHlNPYCNEjS60wTjIyODXpca0ZD9%2BalkhLJ63boMGg%2B8iI6eFtXfW%2BxwGaBP1p1ZcwpA\"}]}"},{"key":"CF-RAY","value":"9b98f9f4684505e7-IAD"},{"key":"alt-svc","value":"h3=\":443\"; ma=86400"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Authorization header missing\",\n    \"code\": \"authentication_failed\"\n}"}],"_postman_id":"38a27849-024f-4407-83e2-744ba0d22dce"},{"name":"Capture","id":"e1f56021-389d-4b20-9f93-1052f6819960","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Authorization","value":"Bearer Token"}],"body":{"mode":"raw","raw":"{\n    \"merchant_reference\": \"64534345\"\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/purchases/69cd26b053d7b783ebf6b6e9/capture","description":"<p>After a successful pre-authorisation, use this endpoint to capture (settle) the held funds. You may capture the full authorised amount or a partial amount.</p>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"55300479-5b71-4b30-84e2-5ba8021bff9c","id":"55300479-5b71-4b30-84e2-5ba8021bff9c","name":"APIs","type":"folder"}},"urlObject":{"path":["purchases","69cd26b053d7b783ebf6b6e9","capture"],"host":["https://app.paybomb.tech/api/v1"],"query":[],"variable":[]}},"response":[{"id":"eaccef30-8310-4459-9a3d-bdbca93b7667","name":"Capture","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Authorization","value":"Bearer Token"}],"body":{"mode":"raw","raw":"{\n    \"merchant_reference\": \"64534345\"\n}","options":{"raw":{"language":"json"}}},"url":"https://app.paybomb.tech/api/v1/purchases/69cd26b053d7b783ebf6b6e9/capture"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"Text","header":[{"key":"Date","value":"Wed, 01 Apr 2026 17:16:51 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"Nel","value":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}"},{"key":"X-Frame-Options","value":"ALLOW-FROM *"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"x-session-id","value":"72818dba-381a-449a-8351-390453ddbf72"},{"key":"Vary","value":"Origin"},{"key":"Vary","value":"Access-Control-Request-Method"},{"key":"Vary","value":"Access-Control-Request-Headers"},{"key":"Server","value":"cloudflare"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"0"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 3578d122de1401ebc52a7afd35dd5d0c.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"IAD61-P10"},{"key":"X-Amz-Cf-Id","value":"zEG99N28vChcugkKEe-mJxhNgum-PAK1lcn_2mKqagcBd5deWquIjw=="},{"key":"cf-cache-status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=EnQbeJo0VkBTF%2BqefkY%2BZ1OejkL%2BkIkR76eA5%2FtL3qaxYlOL1ehFjmSIpGl5i91OldfFB41NXeRXp3E43WxFSEhlUj7OgOqbI6eYZs%2B%2BcUBdewUDmvk46tJrDA5WO53Bib8q\"}]}"},{"key":"CF-RAY","value":"9e593e77fb953ec9-IAD"}],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":"{\n    \"purchaseId\": \"69cd361053d7b783ebf7324d\",\n    \"client\": {\n        \"customerId\": \"NA\",\n        \"email\": \"kailashvishnoi126741@paybomb.tech\",\n        \"full_name\": \"akshaya singhal\",\n        \"date_of_birth\": \"1800-01-01\",\n        \"street_address\": \"123\",\n        \"country\": \"ZM\",\n        \"city\": \"jaipur\",\n        \"zip_code\": \"234567\",\n        \"cc\": [],\n        \"bcc\": [],\n        \"stateCode\": \"CA\"\n    },\n    \"updated_on\": 1775056447,\n    \"type\": \"purchase\",\n    \"paymentMethod\": \"MASTER,VISA,VIRTUAL-IBAN,CRYPTO-WALLET,MAYA,GCASH,QRPH,BANKTRANSFER,NETBANKING,UPI-QR,PAYPLAY,UPI-INTENT,MOBILEMONEY,GOOGLEPAY,APPLEPAY\",\n    \"amountUnit\": \"MAJOR\",\n    \"errorMsg\": \"\",\n    \"errorCode\": \"NA\",\n    \"force_recurring\": false,\n    \"created_on\": 1775056400,\n    \"extraParam\": {\n        \"aft\": {\n            \"account_owner_address1\": \"test\",\n            \"account_owner_address2\": \"test\",\n            \"account_owner_street\": \"test\",\n            \"account_owner_postal_code\": \"123\",\n            \"account_owner_city\": \"test\",\n            \"account_owner_country\": \"UK\",\n            \"merchant_postal_code\": \"123\",\n            \"merchant_state\": \"FRA\",\n            \"acceptor_legal_name\": \"test\",\n            \"sender_address\": \"test\",\n            \"sender_city\": \"test\",\n            \"sender_state\": \"RJ\",\n            \"sender_country\": \"FRA\",\n            \"sender_name\": \"test\",\n            \"sender_account_number\": \"test\",\n            \"recipient_name\": \"test\",\n            \"bai\": \"AA\"\n        }\n    },\n    \"merchantRef\": \"69cd361053d7b783ebf7324d\",\n    \"purchase\": {\n        \"currency\": \"EUR\",\n        \"products\": [\n            {\n                \"name\": \"gaming cards\",\n                \"quantity\": 1.0,\n                \"price\": 10.0,\n                \"discount\": 0,\n                \"tax_percent\": \"0.00\"\n            }\n        ],\n        \"total\": 10.0,\n        \"requestAmount\": 10.0,\n        \"language\": \"en\",\n        \"notes\": \"\",\n        \"debt\": 0,\n        \"total_formatted\": 1.0,\n        \"taxAmount\": 0.0,\n        \"taxPercent\": 0.0,\n        \"request_client_details\": [],\n        \"email_message\": \"\"\n    },\n    \"payment\": {\n        \"is_outgoing\": false,\n        \"payment_type\": \"PURCHASE\",\n        \"amount\": 10.0,\n        \"currency\": \"EUR\",\n        \"net_amount\": 10.0,\n        \"fee_amount\": 0.0,\n        \"pending_amount\": 0.0,\n        \"pending_unfreeze_on\": null,\n        \"description\": \"\",\n        \"paid_on\": 1775056410,\n        \"remote_paid_on\": 1775056410\n    },\n    \"issuer_details\": {\n        \"website\": \"\",\n        \"legal_street_address\": \"\",\n        \"legal_country\": \"\",\n        \"legal_city\": \"\",\n        \"legal_zip_code\": \"\",\n        \"bank_accounts\": [\n            {}\n        ],\n        \"legal_name\": \"ECOMTEST1\",\n        \"brand_name\": \"ECOMTEST1\",\n        \"registration_number\": \"\",\n        \"tax_number\": \"\"\n    },\n    \"transaction_data\": {\n        \"payment_method\": \"\",\n        \"flow\": \"payform\",\n        \"extra\": {\n            \"expiry_month\": \"12\",\n            \"amount\": 10.0,\n            \"card_issuer\": \"ING BELGIUM, S.A.\",\n            \"masked_pan\": \"46401701****6658\",\n            \"card_brand\": \"VISA\",\n            \"card_issuer_country\": \"BE\",\n            \"card_type\": \"CREDIT\",\n            \"cardholder_name\": \"Sank\",\n            \"expiry_year\": \"28\"\n        },\n        \"country\": \"\",\n        \"attempts\": [\n            {\n                \"client_ip\": \"223.235.99.134\",\n                \"type\": \"execute\",\n                \"payment_method\": \"VISA\",\n                \"flow\": \"payform\",\n                \"successful\": true,\n                \"country\": \"BE\",\n                \"processing_time\": 1775056410,\n                \"extra\": {\n                    \"expiry_month\": \"12\",\n                    \"amount\": 10.0,\n                    \"card_issuer\": \"ING BELGIUM, S.A.\",\n                    \"masked_pan\": \"46401701****6658\",\n                    \"card_brand\": \"VISA\",\n                    \"card_issuer_country\": \"BE\",\n                    \"card_type\": \"CREDIT\",\n                    \"cardholder_name\": \"Sank\",\n                    \"expiry_year\": \"28\"\n                }\n            }\n        ]\n    },\n    \"status\": \"PAID\",\n    \"status_history\": [\n        {\n            \"status\": \"created\",\n            \"timestamp\": 1775056400\n        },\n        {\n            \"status\": \"pending_execute\",\n            \"timestamp\": 1775056410\n        },\n        {\n            \"status\": \"payment_in_process\",\n            \"timestamp\": 1775056410\n        },\n        {\n            \"status\": \"3DS success\",\n            \"timestamp\": 1775056424\n        },\n        {\n            \"status\": \"preauthorized\",\n            \"timestamp\": 1775056428\n        },\n        {\n            \"status\": \"capture_in_process\",\n            \"timestamp\": 1775056447\n        },\n        {\n            \"status\": \"paid\",\n            \"timestamp\": 1775056447\n        }\n    ],\n    \"is_test\": false,\n    \"brand_id\": \"bab077d5-df4d-4fda-8c6c-2f78d97c9a16\",\n    \"send_receipt\": false,\n    \"is_recurring_token\": false,\n    \"skip_capture\": true,\n    \"reference_generated\": \"PS1673\",\n    \"issued\": \"2026-04-01\",\n    \"due\": 1775056400,\n    \"refund_upto\": 1776089649,\n    \"cc_descriptor\": \"\",\n    \"fraudScore\": \"NA\",\n    \"trustScore\": \"NA\",\n    \"extraFee\": \"0\",\n    \"pix_payload\": {},\n    \"payInDetails\": {},\n    \"paidOn\": 1775056449,\n    \"receivedAmt\": 0.0,\n    \"captureTxns\": [\n        {\n            \"captureId\": \"41e31f9f-1e98-4f4d-b48c-7d1ed488fc3f\",\n            \"purchaseId\": \"69cd361053d7b783ebf7324d\",\n            \"amount\": 10.0,\n            \"fxAmount\": 10.0,\n            \"status\": \"PAID\",\n            \"pspReference\": null,\n            \"merchantReference\": \"64534345\",\n            \"createdAt\": 1775056447,\n            \"updatedAt\": 1775056447,\n            \"whiteId\": 0,\n            \"fxCurrency\": \"EUR\",\n            \"bankMid\": \"payneticsexternal3ds\",\n            \"isTest\": false,\n            \"currency\": \"EUR\",\n            \"amountInUsd\": 11.85,\n            \"merchantName\": \"KailashMerchant\",\n            \"bankName\": \"paynatics-aft_\",\n            \"bankId\": \"532\",\n            \"trxMethod\": \"CARDS\",\n            \"rollingReserve\": 0.0,\n            \"transFees\": 0.0,\n            \"mdr\": 0.0,\n            \"isSettlementPending\": 0,\n            \"parentId\": 0,\n            \"transSettlementId\": null,\n            \"errorSettlementId\": null,\n            \"merchantId\": \"589\"\n        }\n    ],\n    \"taxAmount\": 0.0,\n    \"surcharge\": 0.0,\n    \"surchargeType\": \"\",\n    \"sessionId\": \"\",\n    \"refund_availability\": \"NONE\",\n    \"refundable_amount\": 10.0,\n    \"success_redirect\": \"https://google.com/getResponse.jsp?issucces=true\",\n    \"failure_redirect\": \"https://google.com/getResponse.jsp?issucces=false\",\n    \"cancel_redirect\": \"\",\n    \"success_callback\": \"https://www.google.com/\",\n    \"failure_callback\": \"https://app.paybomb.tech/merchant\",\n    \"platform\": \"API\",\n    \"created_from_ip\": \"223.235.99.134\",\n    \"checkout_url\": \"https://app.paybomb.tech/payments/47395a8217d29014a4af6b1c494ac06b/\",\n    \"direct_post_url\": \"https://app.paybomb.tech/api/v1/p/69cd361053d7b783ebf7324d/\",\n    \"payoutProcess\": false\n}"}],"_postman_id":"e1f56021-389d-4b20-9f93-1052f6819960"},{"name":"Cancel","id":"a9e6b414-35b0-4497-8767-be77ce7a6949","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer 309855a6e22c2bc9873f11ee5997cb3ff246a8e8ec4f009f2924ad7178b2ad7b"}],"url":"https://app.paybomb.tech/api/v1/purchases/69ca76dbace4fa4413db928c/cancel","description":"<p>Use this endpoint to cancel an authorised payment before it has been captured. Voiding releases the held funds back to the customer immediately.</p>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"55300479-5b71-4b30-84e2-5ba8021bff9c","id":"55300479-5b71-4b30-84e2-5ba8021bff9c","name":"APIs","type":"folder"}},"urlObject":{"path":["purchases","69ca76dbace4fa4413db928c","cancel"],"host":["https://app.paybomb.tech/api/v1"],"query":[],"variable":[]}},"response":[{"id":"e00f5d8e-b3aa-43f1-aa19-7decf4fd329e","name":"Cancel","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer 309855a6e22c2bc9873f11ee5997cb3ff246a8e8ec4f009f2924ad7178b2ad7b"}],"url":"https://app.paybomb.tech/api/v1/purchases/69ca76dbace4fa4413db928c/cancel"},"status":"Method Not Allowed","code":405,"_postman_previewlanguage":"Text","header":[{"key":"Date","value":"Wed, 01 Apr 2026 17:18:25 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"Nel","value":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}"},{"key":"X-Frame-Options","value":"ALLOW-FROM *"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"x-session-id","value":"1c9b7d67-8dec-4e71-b35b-7952f23b67ed"},{"key":"Vary","value":"Origin"},{"key":"Vary","value":"Access-Control-Request-Method"},{"key":"Vary","value":"Access-Control-Request-Headers"},{"key":"Server","value":"cloudflare"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"0"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 8bd3b44b8e417f2b75cd6e631907112a.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"IAD61-P10"},{"key":"X-Amz-Cf-Id","value":"WSuVRaHm9E64itnjsFWAyBSPCR8YOFpZr7jY-NAhT-Ae-3_bc-hNTw=="},{"key":"cf-cache-status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=%2FOrvZsMz3WoHOQDEvKgGSADamNtnaGrILftqtr5BiqYIlUvgXZT89lPPwyXtpIDJW8BNOXjG%2FgAQmYnOUsUpQZ%2BDIVJsSDsxo4FxOEgIKcxPYcG21xgzcTNpNqbnk%2Fnw%2FEki\"}]}"},{"key":"CF-RAY","value":"9e5940bd580a07ed-IAD"}],"cookie":[{"expires":"Invalid Date","domain":"","path":""}],"responseTime":null,"body":"{\n    \"purchaseId\": \"69cd36c353d7b783ebf743e9\",\n    \"client\": {\n        \"customerId\": \"NA\",\n        \"email\": \"kailashvishnoi126741@paybomb.tech\",\n        \"full_name\": \"akshaya singhal\",\n        \"date_of_birth\": \"1800-01-01\",\n        \"street_address\": \"123\",\n        \"country\": \"ZM\",\n        \"city\": \"jaipur\",\n        \"zip_code\": \"234567\",\n        \"cc\": [],\n        \"bcc\": [],\n        \"stateCode\": \"CA\"\n    },\n    \"updated_on\": 1775056649,\n    \"type\": \"purchase\",\n    \"paymentMethod\": \"MASTER,VISA,VIRTUAL-IBAN,CRYPTO-WALLET,MAYA,GCASH,QRPH,BANKTRANSFER,NETBANKING,UPI-QR,PAYPLAY,UPI-INTENT,MOBILEMONEY,GOOGLEPAY,APPLEPAY\",\n    \"amountUnit\": \"MAJOR\",\n    \"errorMsg\": \"\",\n    \"errorCode\": \"NA\",\n    \"force_recurring\": false,\n    \"created_on\": 1775056579,\n    \"extraParam\": {\n        \"aft\": {\n            \"account_owner_address1\": \"test\",\n            \"account_owner_address2\": \"test\",\n            \"account_owner_street\": \"test\",\n            \"account_owner_postal_code\": \"123\",\n            \"account_owner_city\": \"test\",\n            \"account_owner_country\": \"UK\",\n            \"merchant_postal_code\": \"123\",\n            \"merchant_state\": \"FRA\",\n            \"acceptor_legal_name\": \"test\",\n            \"sender_address\": \"test\",\n            \"sender_city\": \"test\",\n            \"sender_state\": \"RJ\",\n            \"sender_country\": \"FRA\",\n            \"sender_name\": \"test\",\n            \"sender_account_number\": \"test\",\n            \"recipient_name\": \"test\",\n            \"bai\": \"AA\"\n        }\n    },\n    \"merchantRef\": \"69cd36c353d7b783ebf743e9\",\n    \"purchase\": {\n        \"currency\": \"EUR\",\n        \"products\": [\n            {\n                \"name\": \"gaming cards\",\n                \"quantity\": 1.0,\n                \"price\": 10.0,\n                \"discount\": 0,\n                \"tax_percent\": \"0.00\"\n            }\n        ],\n        \"total\": 10.0,\n        \"requestAmount\": 10.0,\n        \"language\": \"en\",\n        \"notes\": \"\",\n        \"debt\": 0,\n        \"total_formatted\": 1.0,\n        \"taxAmount\": 0.0,\n        \"taxPercent\": 0.0,\n        \"request_client_details\": [],\n        \"email_message\": \"\"\n    },\n    \"payment\": {\n        \"is_outgoing\": false,\n        \"payment_type\": \"PURCHASE\",\n        \"amount\": 10.0,\n        \"currency\": \"EUR\",\n        \"net_amount\": 10.0,\n        \"fee_amount\": 0.0,\n        \"pending_amount\": 0.0,\n        \"pending_unfreeze_on\": null,\n        \"description\": \"\",\n        \"paid_on\": 1775056600,\n        \"remote_paid_on\": 1775056600\n    },\n    \"issuer_details\": {\n        \"website\": \"\",\n        \"legal_street_address\": \"\",\n        \"legal_country\": \"\",\n        \"legal_city\": \"\",\n        \"legal_zip_code\": \"\",\n        \"bank_accounts\": [\n            {}\n        ],\n        \"legal_name\": \"ECOMTEST1\",\n        \"brand_name\": \"ECOMTEST1\",\n        \"registration_number\": \"\",\n        \"tax_number\": \"\"\n    },\n    \"transaction_data\": {\n        \"payment_method\": \"\",\n        \"flow\": \"payform\",\n        \"extra\": {\n            \"expiry_month\": \"12\",\n            \"amount\": 10.0,\n            \"card_issuer\": \"JPMORGAN CHASE BANK, N.A.\",\n            \"masked_pan\": \"42000000****0000\",\n            \"card_brand\": \"VISA\",\n            \"card_issuer_country\": \"US\",\n            \"card_type\": \"CREDIT\",\n            \"cardholder_name\": \"Sank\",\n            \"expiry_year\": \"28\"\n        },\n        \"country\": \"\",\n        \"attempts\": [\n            {\n                \"client_ip\": \"223.235.99.134\",\n                \"type\": \"execute\",\n                \"payment_method\": \"VISA\",\n                \"flow\": \"payform\",\n                \"successful\": true,\n                \"country\": \"US\",\n                \"processing_time\": 1775056600,\n                \"extra\": {\n                    \"expiry_month\": \"12\",\n                    \"amount\": 10.0,\n                    \"card_issuer\": \"JPMORGAN CHASE BANK, N.A.\",\n                    \"masked_pan\": \"42000000****0000\",\n                    \"card_brand\": \"VISA\",\n                    \"card_issuer_country\": \"US\",\n                    \"card_type\": \"CREDIT\",\n                    \"cardholder_name\": \"Sank\",\n                    \"expiry_year\": \"28\"\n                }\n            }\n        ]\n    },\n    \"status\": \"CANCELLED\",\n    \"status_history\": [\n        {\n            \"status\": \"created\",\n            \"timestamp\": 1775056579\n        },\n        {\n            \"status\": \"pending_execute\",\n            \"timestamp\": 1775056600\n        },\n        {\n            \"status\": \"payment_in_process\",\n            \"timestamp\": 1775056600\n        },\n        {\n            \"status\": \"3DS success\",\n            \"timestamp\": 1775056607\n        },\n        {\n            \"status\": \"preauthorized\",\n            \"timestamp\": 1775056611\n        },\n        {\n            \"status\": \"void_in_process\",\n            \"timestamp\": 1775056632\n        },\n        {\n            \"status\": \"preauthorized\",\n            \"timestamp\": 1775056632\n        },\n        {\n            \"status\": \"void_in_process\",\n            \"timestamp\": 1775056647\n        },\n        {\n            \"status\": \"cancelled\",\n            \"timestamp\": 1775056649\n        }\n    ],\n    \"is_test\": false,\n    \"brand_id\": \"bab077d5-df4d-4fda-8c6c-2f78d97c9a16\",\n    \"send_receipt\": false,\n    \"is_recurring_token\": false,\n    \"skip_capture\": true,\n    \"reference_generated\": \"PS1675\",\n    \"issued\": \"2026-04-01\",\n    \"due\": 1775056579,\n    \"refund_upto\": 1776089849,\n    \"cc_descriptor\": \"\",\n    \"fraudScore\": \"NA\",\n    \"trustScore\": \"NA\",\n    \"extraFee\": \"0\",\n    \"pix_payload\": {},\n    \"payInDetails\": {},\n    \"paidOn\": 0,\n    \"receivedAmt\": 0.0,\n    \"taxAmount\": 0.0,\n    \"surcharge\": 0.0,\n    \"surchargeType\": \"\",\n    \"sessionId\": \"\",\n    \"refund_availability\": \"NONE\",\n    \"refundable_amount\": 10.0,\n    \"success_redirect\": \"https://google.com/getResponse.jsp?issucces=true\",\n    \"failure_redirect\": \"https://google.com/getResponse.jsp?issucces=false\",\n    \"cancel_redirect\": \"\",\n    \"success_callback\": \"https://www.google.com/\",\n    \"failure_callback\": \"https://app.paybomb.tech/merchant\",\n    \"platform\": \"API\",\n    \"created_from_ip\": \"223.235.99.134\",\n    \"checkout_url\": \"https://app.paybomb.tech/payments/23182fc42998cb02b4a3e6aa5c3e26c8/\",\n    \"direct_post_url\": \"https://app.paybomb.tech/api/v1/p/69cd36c353d7b783ebf743e9/\",\n    \"payoutProcess\": false\n}"}],"_postman_id":"a9e6b414-35b0-4497-8767-be77ce7a6949"}],"id":"55300479-5b71-4b30-84e2-5ba8021bff9c","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"faa83157-7798-4a6c-9122-cab04cc92898"}},{"listen":"test","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"1b4d8940-8958-4661-82c1-3ad7914b49bd"}}],"_postman_id":"55300479-5b71-4b30-84e2-5ba8021bff9c","description":""},{"name":"Transaction Status Lifecycle","item":[],"id":"7e038849-ad8d-4427-99d0-d39d5b445d25","description":"<p>Every payment processed through the pre-authorisation flow passes through a series of statuses. Understanding these statuses is critical for building robust integrations.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Status</th>\n<th>Description</th>\n<th>Available Actions</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>CREATED</td>\n<td>Transactions are initiated by merchants.</td>\n<td>Open checkout url</td>\n</tr>\n<tr>\n<td>PENDING_EXECUTE</td>\n<td>Transaction is in processing</td>\n<td>Wait</td>\n</tr>\n<tr>\n<td>PAYMENT_IN_PROCESS</td>\n<td>Transaction is being processed by the payment network.</td>\n<td>Wait</td>\n</tr>\n<tr>\n<td>PREAUTHORIZED</td>\n<td>Funds have been successfully held. Ready for capture or void.</td>\n<td>Capture, Void</td>\n</tr>\n<tr>\n<td>CAPTURE_IN_PROCESS</td>\n<td>Capture has been inititated and is in process.</td>\n<td>Wait</td>\n</tr>\n<tr>\n<td>PAID</td>\n<td>Full authorised amount has been settled to the merchant.</td>\n<td>Refund, Partial Refund</td>\n</tr>\n<tr>\n<td>PARTIALLY_CAPTURED</td>\n<td>A portion of the authorised amount was captured. Remainder released.</td>\n<td>Refund (on captured amount), Partial Refund</td>\n</tr>\n<tr>\n<td>VOID_IN_PROCESS</td>\n<td>Authorisation was cancelled before capture and it is in process</td>\n<td>None</td>\n</tr>\n<tr>\n<td>CANCELLED</td>\n<td>Authorisation was cancelled before capture. Funds released.</td>\n<td>None</td>\n</tr>\n<tr>\n<td>EXPIRED</td>\n<td>Authorisation expired without capture. Funds auto-released.</td>\n<td>None</td>\n</tr>\n<tr>\n<td>ERROR</td>\n<td>A processing error occurred during the preauthorisation step</td>\n<td>Retry Preauth</td>\n</tr>\n<tr>\n<td>REFUNDED</td>\n<td>Post-capture return of funds (separate API).</td>\n<td>None</td>\n</tr>\n<tr>\n<td>PARTIAL_REFUNDED</td>\n<td>Post-capture return of partial funds (separate API).</td>\n<td>Partial Refund</td>\n</tr>\n</tbody>\n</table>\n</div>","_postman_id":"7e038849-ad8d-4427-99d0-d39d5b445d25"},{"name":"Best Practices","item":[],"id":"7b5da023-1820-4d82-b3e7-7ad47738dbf4","description":"<h2 id=\"capture-timing\">Capture Timing</h2>\n<p>Capture payments as soon as the goods are shipped or the service is delivered. The longer you wait, the higher the risk of authorisation expiry, customer disputes, and declined captures.</p>\n<h2 id=\"idempotency\">Idempotency</h2>\n<p>Always include the X-Idempotency-Key header for all write operations (authorise, capture, void). This protects against duplicate transactions caused by network timeouts or retries.</p>\n<h2 id=\"webhook-driven-architecture\">Webhook-Driven Architecture</h2>\n<p>Do not rely solely on synchronous API responses for business logic. Implement webhook handlers to receive real-time status updates and use them as the source of truth for transaction state in your system.</p>\n<h2 id=\"error-handling\">Error Handling</h2>\n<p>Implement retry logic with exponential backoff for 5xx errors and 429 (rate limit) responses. For 4xx errors, parse the error response body and handle each error code appropriately in your application logic.</p>\n<h2 id=\"pci-compliance\">PCI Compliance</h2>\n<p>If you are handling raw card numbers, you must be PCI DSS Level 1 certified. Paybomb strongly recommends using tokenised payment methods to minimise your PCI scope. Use the Paybomb Cashier or client-side SDK to tokenise card details before they reach your server.</p>\n<h2 id=\"reconciliation\">Reconciliation</h2>\n<p>Use the reference field on authorise, capture, and void requests to associate Paybomb transactions with your internal order system. The balances object in every response provides a real-time breakdown for reconciliation.</p>\n<h2 id=\"3d-secure\">3D Secure</h2>\n<p>Enable 3DS for all pre-authorisation requests where supported. This shifts fraud liability to the card issuer and reduces chargebacks. Paybomb supports 3DS 2.x with frictionless and challenge flows.</p>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"1799b30b-cc85-4d82-b4a3-6b05f5c654b5"}},{"listen":"test","script":{"type":"text/javascript","packages":{},"requests":{},"exec":[""],"id":"19cdfecd-428e-4a03-a873-57766e84fa8e"}}],"_postman_id":"7b5da023-1820-4d82-b3e7-7ad47738dbf4"},{"name":"Frequently Asked Questions","item":[],"id":"80d1a733-27c9-44ce-8558-5dcb783020cc","description":"<p><strong>Q: Can I capture more than the authorised amount?</strong></p>\n<p><strong>A: No. The capture amount must be less than or equal to the authorised amount. If you need to charge more, you must create a new authorisation for the additional amount.</strong></p>\n<p><strong>Q: Can I perform multiple partial captures on a single authorisation?</strong></p>\n<p><strong>A: Yes. Paybomb supports multiple captures per authorisation. But you will need to contact the support team for enabling the same.</strong> </p>\n<p><strong>Q: What happens if I do not capture before the authorisation expires?</strong></p>\n<p><strong>A: The authorisation automatically expires and the held funds are released back to the customer. You will receive a payment.expired webhook event. You must create a new authorisation to charge the customer.</strong></p>\n<p><strong>Q: Can I void a payment after it has been captured?</strong></p>\n<p><strong>A: No. Once a payment is captured, you must use the Refund API to return funds. The void endpoint only works for payments in AUTHORISED status.</strong></p>\n<p><strong>Q: How long does a void take to reflect on the customer’s statement?</strong></p>\n<p><strong>A: Typically, the hold is removed within 1–3 business days, depending on the issuing bank. Some banks may take up to 7 days to release the hold.</strong></p>\n<p><strong>Q: Does the customer see the pre-authorisation on their statement?</strong></p>\n<p><strong>A: Yes. The customer will see a pending charge for the authorised amount. This pending charge is released upon void or expiry, or replaced by the final charge upon capture.</strong></p>\n<p><strong>Q: Can I use pre-authorisation with non-card payment methods?</strong></p>\n<p><strong>A: Pre-authorisation is primarily supported for card payments. Support for alternative payment methods varies. Check the Paybomb payment methods documentation for details.</strong></p>\n<p><strong>Q: Is 3D Secure required for pre-authorisations?</strong></p>\n<p><strong>A: 3DS is not required but is strongly recommended. It reduces fraud liability and chargeback risk. Paybomb supports 3DS on all card pre-authorisation requests.</strong></p>\n","_postman_id":"80d1a733-27c9-44ce-8558-5dcb783020cc"}],"id":"a48dd8ee-4749-4c27-a6ed-b483807a1fef","description":"<h1 id=\"overview\"><strong>Overview</strong></h1>\n<p>Pre-authorisation (also known as \"auth only\") is a two-step payment process where a merchant first reserves (holds) funds on a customer’s payment method without immediately capturing the amount. This allows the merchant to verify fund availability before fulfilling an order, then capture (settle) the payment at a later time — or void (cancel) the hold if the order is not fulfilled.</p>\n<h2 id=\"when-to-use-pre-authorisation\"><strong>When to Use Pre-Authorisation</strong></h2>\n<p>Pre-authorisation is ideal for scenarios where the final transaction amount may change, or where goods/services are not delivered immediately. Common use cases include:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Use Case</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>E-Commerce</td>\n<td>Authorise at checkout; capture when the order ships. Void if the item is out of stock.</td>\n</tr>\n<tr>\n<td>Hospitality</td>\n<td>Pre-authorise the estimated room charge at check-in; adjust and capture at checkout.</td>\n</tr>\n<tr>\n<td>Car Rentals</td>\n<td>Hold the estimated rental cost; capture the final amount upon vehicle return.</td>\n</tr>\n<tr>\n<td>Subscriptions</td>\n<td>Verify the card with a pre-auth before activating a trial; capture when billing begins.</td>\n</tr>\n<tr>\n<td>Marketplaces</td>\n<td>Authorise the buyer’s funds; capture once the seller confirms dispatch.</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"key-concepts\"><strong>Key Concepts</strong></h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Term</strong></th>\n<th><strong>Definition</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Pre-Authorisation</td>\n<td>A transaction that reserves funds on the customer’s card without settling them. Also called \"auth only\" or \"manual capture\".</td>\n</tr>\n<tr>\n<td>Capture</td>\n<td>The action of claiming the previously authorised funds. Can be full or partial.</td>\n</tr>\n<tr>\n<td>Partial Capture</td>\n<td>Capturing less than the originally authorised amount. The remaining balance is automatically released.</td>\n</tr>\n<tr>\n<td>Void</td>\n<td>Cancelling a pre-authorised transaction before capture, releasing the held funds back to the customer.</td>\n</tr>\n<tr>\n<td>Authorisation Expiry</td>\n<td>The time window during which a pre-auth remains valid. Typically 7–30 days depending on card scheme and MCC.</td>\n</tr>\n</tbody>\n</table>\n</div>","_postman_id":"a48dd8ee-4749-4c27-a6ed-b483807a1fef"},{"name":"Get Balance API (V2) - Orchestration","item":[{"name":"Checking Balance","id":"b3aaacf3-5f45-48ed-bed2-91e35a8aa207","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer Token","type":"text"}],"body":{"mode":"raw","raw":"{ \r\n   \"paymentMethod\" : \"PAYOUT-INTERAC-ETRANSFER\"\r\n\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/getBalance","description":"<h2 id=\"api-for-checking-available-balance\"><strong>API for checking available balance</strong></h2>\n<ol>\n<li><p>URL :- /getBalance/</p>\n</li>\n<li><p>RequestType: POST</p>\n</li>\n<li><p>Request Body</p>\n</li>\n</ol>\n<p>Note: Currency is not a mandatory parameter. If no parameter is specified then all respective currency balances would be provided, if any specific currency parameter is provided then only that currency balance would be provided.</p>\n","urlObject":{"path":["getBalance"],"host":[""],"query":[],"variable":[]}},"response":[{"id":"08022b58-f579-4ed3-90e8-31da9e95be42","name":"Checking Balance payout-success","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{ \r\n   \"paymentMethod\" : \"PAYOUT-INTERAC-ETRANSFER\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/getBalance"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"paymentMethod\": \"PAYOUT-INTERAC-ETRANSFER\",\n    \"status\": \"success\",\n    \"gateways\": [\n        {\n            \"gatewayName\": \"payhost\",\n            \"status\": \"success\",\n            \"error\": null,\n            \"balances\": [\n                {\n                    \"currency\": \"CAD\",\n                    \"balance\": 808.380000\n                },\n                {\n                    \"currency\": \"USD\",\n                    \"balance\": 803.380000\n                }\n            ]\n        },\n        {\n            \"gatewayName\": \"choicepaypg\",\n            \"status\": \"success\",\n            \"error\": null,\n            \"balances\": [\n                {\n                    \"currency\": \"CAD\",\n                    \"balance\": 808.380000\n                },\n                {\n                    \"currency\": \"USD\",\n                    \"balance\": 808.380000\n                }\n            ]\n        }\n    ],\n    \"aggregatedBalances\": [\n        {\n            \"currency\": \"CAD\",\n            \"balance\": 1616.760000\n        },\n        {\n            \"currency\": \"USD\",\n            \"balance\": 1611.760000\n        }\n    ]\n}"},{"id":"94f626ca-13e7-4326-a5ea-dc88d4d39f23","name":"Checking Balance partial-success","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{ \r\n   \"paymentMethod\" : \"CARDS\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/getBalance"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"paymentMethod\": \"CARDS\",\n    \"status\": \"partial\",\n    \"gateways\": [\n        {\n            \"gatewayName\": \"a55Mandate\",\n            \"status\": \"failed\",\n            \"error\": {\n                \"code\": \"error\",\n                \"message\": \"Bank does not provide balance\"\n            },\n            \"balances\": []\n        },\n        {\n            \"gatewayName\": \"bk_sbx_smilepayz_pix_payin\",\n            \"status\": \"success\",\n            \"error\": null,\n            \"balances\": [\n                {\n                    \"currency\": \"IDR\",\n                    \"balance\": 250000.000000\n                }\n            ]\n        },\n        {\n            \"gatewayName\": \"choicepay_pg\",\n            \"status\": \"success\",\n            \"error\": null,\n            \"balances\": [\n                {\n                    \"currency\": \"AED\",\n                    \"balance\": 0.000000\n                },\n                {\n                    \"currency\": \"AUD\",\n                    \"balance\": 3412.000000\n                },\n                {\n                    \"currency\": \"BRL\",\n                    \"balance\": 100.089996\n                },\n                {\n                    \"currency\": \"BTC\",\n                    \"balance\": 0.000000\n                },\n                {\n                    \"currency\": \"BXC\",\n                    \"balance\": 0.000000\n                },\n                {\n                    \"currency\": \"CAD\",\n                    \"balance\": 1000.000000\n                },\n                {\n                    \"currency\": \"CDF\",\n                    \"balance\": 0.000000\n                },\n                {\n                    \"currency\": \"COP\",\n                    \"balance\": 0.000000\n                },\n                {\n                    \"currency\": \"DKK\",\n                    \"balance\": 0.000000\n                },\n                {\n                    \"currency\": \"EGP\",\n                    \"balance\": 0.000000\n                },\n                {\n                    \"currency\": \"ETH\",\n                    \"balance\": 0.000000\n                },\n                {\n                    \"currency\": \"EUR\",\n                    \"balance\": 0.000000\n                },\n                {\n                    \"currency\": \"GBP\",\n                    \"balance\": -24.327801\n                },\n                {\n                    \"currency\": \"GHS\",\n                    \"balance\": 0.000000\n                },\n                {\n                    \"currency\": \"IDR\",\n                    \"balance\": 1000.000000\n                },\n                {\n                    \"currency\": \"INR\",\n                    \"balance\": 0.000000\n                },\n                {\n                    \"currency\": \"JPY\",\n                    \"balance\": 0.000000\n                },\n                {\n                    \"currency\": \"KES\",\n                    \"balance\": 0.000000\n                },\n                {\n                    \"currency\": \"MWK\",\n                    \"balance\": 0.000000\n                },\n                {\n                    \"currency\": \"MXN\",\n                    \"balance\": -4.770000\n                },\n                {\n                    \"currency\": \"NGN\",\n                    \"balance\": 0.000000\n                },\n                {\n                    \"currency\": \"NZD\",\n                    \"balance\": 0.000000\n                },\n                {\n                    \"currency\": \"RWF\",\n                    \"balance\": 0.000000\n                },\n                {\n                    \"currency\": \"THB\",\n                    \"balance\": 0.000000\n                },\n                {\n                    \"currency\": \"TZS\",\n                    \"balance\": 0.000000\n                },\n                {\n                    \"currency\": \"UGX\",\n                    \"balance\": 0.000000\n                },\n                {\n                    \"currency\": \"USD\",\n                    \"balance\": 167.457992\n                },\n                {\n                    \"currency\": \"USDC\",\n                    \"balance\": 0.000000\n                },\n                {\n                    \"currency\": \"USDT\",\n                    \"balance\": 0.000000\n                },\n                {\n                    \"currency\": \"UZS\",\n                    \"balance\": 0.000000\n                },\n                {\n                    \"currency\": \"XAF\",\n                    \"balance\": 0.000000\n                },\n                {\n                    \"currency\": \"XOF\",\n                    \"balance\": 0.000000\n                },\n                {\n                    \"currency\": \"ZAR\",\n                    \"balance\": 120.000000\n                },\n                {\n                    \"currency\": \"ZMW\",\n                    \"balance\": 0.000000\n                }\n            ]\n        },\n        {\n            \"gatewayName\": \"payhost\",\n            \"status\": \"failed\",\n            \"error\": {\n                \"code\": \"error\",\n                \"message\": \"Bank does not provide balance\"\n            },\n            \"balances\": []\n        }\n    ],\n    \"aggregatedBalances\": [\n        {\n            \"currency\": \"AED\",\n            \"balance\": 0.000000\n        },\n        {\n            \"currency\": \"AUD\",\n            \"balance\": 3412.000000\n        },\n        {\n            \"currency\": \"BRL\",\n            \"balance\": 100.089996\n        },\n        {\n            \"currency\": \"BTC\",\n            \"balance\": 0.000000\n        },\n        {\n            \"currency\": \"BXC\",\n            \"balance\": 0.000000\n        },\n        {\n            \"currency\": \"CAD\",\n            \"balance\": 1000.000000\n        },\n        {\n            \"currency\": \"CDF\",\n            \"balance\": 0.000000\n        },\n        {\n            \"currency\": \"COP\",\n            \"balance\": 0.000000\n        },\n        {\n            \"currency\": \"DKK\",\n            \"balance\": 0.000000\n        },\n        {\n            \"currency\": \"EGP\",\n            \"balance\": 0.000000\n        },\n        {\n            \"currency\": \"ETH\",\n            \"balance\": 0.000000\n        },\n        {\n            \"currency\": \"EUR\",\n            \"balance\": 0.000000\n        },\n        {\n            \"currency\": \"GBP\",\n            \"balance\": -24.327801\n        },\n        {\n            \"currency\": \"GHS\",\n            \"balance\": 0.000000\n        },\n        {\n            \"currency\": \"IDR\",\n            \"balance\": 251000.000000\n        },\n        {\n            \"currency\": \"INR\",\n            \"balance\": 0.000000\n        },\n        {\n            \"currency\": \"JPY\",\n            \"balance\": 0.000000\n        },\n        {\n            \"currency\": \"KES\",\n            \"balance\": 0.000000\n        },\n        {\n            \"currency\": \"MWK\",\n            \"balance\": 0.000000\n        },\n        {\n            \"currency\": \"MXN\",\n            \"balance\": -4.770000\n        },\n        {\n            \"currency\": \"NGN\",\n            \"balance\": 0.000000\n        },\n        {\n            \"currency\": \"NZD\",\n            \"balance\": 0.000000\n        },\n        {\n            \"currency\": \"RWF\",\n            \"balance\": 0.000000\n        },\n        {\n            \"currency\": \"THB\",\n            \"balance\": 0.000000\n        },\n        {\n            \"currency\": \"TZS\",\n            \"balance\": 0.000000\n        },\n        {\n            \"currency\": \"UGX\",\n            \"balance\": 0.000000\n        },\n        {\n            \"currency\": \"USD\",\n            \"balance\": 167.457992\n        },\n        {\n            \"currency\": \"USDC\",\n            \"balance\": 0.000000\n        },\n        {\n            \"currency\": \"USDT\",\n            \"balance\": 0.000000\n        },\n        {\n            \"currency\": \"UZS\",\n            \"balance\": 0.000000\n        },\n        {\n            \"currency\": \"XAF\",\n            \"balance\": 0.000000\n        },\n        {\n            \"currency\": \"XOF\",\n            \"balance\": 0.000000\n        },\n        {\n            \"currency\": \"ZAR\",\n            \"balance\": 120.000000\n        },\n        {\n            \"currency\": \"ZMW\",\n            \"balance\": 0.000000\n        }\n    ]\n}"},{"id":"accf24b9-4787-47af-8733-2888c01fada6","name":"Checking Balance payout-error","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{ \r\n   \"paymentMethod\" : \"PAYOUT-INTERAC\"\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"/getBalance"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"paymentMethod\": \"PAYOUT-INTERAC\",\n    \"status\": \"failed\",\n    \"gateways\": [\n        {\n            \"gatewayName\": \"payhost\",\n            \"status\": \"failed\",\n            \"error\": {\n                \"code\": \"error\",\n                \"message\": \"Bank does not provide balance\"\n            },\n            \"balances\": []\n        }\n    ],\n    \"aggregatedBalances\": []\n}"}],"_postman_id":"b3aaacf3-5f45-48ed-bed2-91e35a8aa207"}],"id":"cbbd040c-a566-4e46-8723-5d480265592d","description":"<p>The <strong>Get Balance API (V2)</strong> provides orchestrator-level visibility into available balances across multiple payment methods and banking partners. This version enhances the existing balance API by aggregating and returning balance details for all supported payment methods associated with all the PSPs for the merchant</p>\n<p>Overview</p>\n<ul>\n<li><p>Purpose: Retrieve available balance information across different banks/payment methods.</p>\n</li>\n<li><p>Scope: Orchestrator-level (not limited to a single merchant or payment method).</p>\n</li>\n<li><p>Enhancement over previous version:</p>\n<ul>\n<li><p>Returns balances for all payment methods linked to the orchestrator.</p>\n</li>\n<li><p>Provides both consolidated and MID-level (Merchant ID) breakdowns.</p>\n</li>\n</ul>\n</li>\n</ul>\n<p>Request Parameters</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th><strong>Type</strong></th>\n<th>Required</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>paymentMethod</td>\n<td>string</td>\n<td>yes</td>\n<td>Specifies the payment method to query. Example: \"PAYOUT-INTERAC-ETRANSFER\"</td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>Behavior</strong></p>\n<ul>\n<li><p>When a valid paymentMethod is provided, the API retrieves:</p>\n<ul>\n<li><p>Balance details across all associated banks/payment methods.</p>\n</li>\n<li><p>MID-level breakdown for each bank.</p>\n</li>\n<li><p>Consolidated balance per payment method.</p>\n</li>\n</ul>\n</li>\n<li><p>The API is designed specifically for orchestrators and returns aggregated data across multiple merchants and banking integrations.</p>\n</li>\n</ul>\n<p><strong>Success Response</strong></p>\n<p>On successful retrieval, the API returns:</p>\n<ul>\n<li><p>Payment Method Details</p>\n</li>\n<li><p>List of Banks / Payment Providers</p>\n</li>\n<li><p>MID-Level Breakdown</p>\n</li>\n<li><p>Consolidated Balance</p>\n</li>\n</ul>\n<p><strong>Error Handling</strong></p>\n<p>If balance details are not found or the request cannot be processed, the API returns:</p>\n<ul>\n<li><p>Appropriate status code</p>\n</li>\n<li><p>Error message</p>\n</li>\n</ul>\n","_postman_id":"cbbd040c-a566-4e46-8723-5d480265592d"}],"event":[{"listen":"prerequest","script":{"type":"text/javascript","requests":{},"exec":[""],"id":"8b1f3401-af7b-45d0-988a-f5b3f4aee8df"}},{"listen":"test","script":{"type":"text/javascript","requests":{},"exec":[""],"id":"90ca482f-8cbc-4a8b-8054-2714591e017e"}}],"variable":[{"key":"BaseURL","value":"https://app.paybomb.tech/api/v1"},{"key":"StagingAPIKey","value":""},{"key":"BaseV2URL","value":""}]}