{"_id":"@cashpayyy/sdk","_rev":"4-f2f74f3812f342c1a8ea064ca4b8bf92","name":"@cashpayyy/sdk","dist-tags":{"latest":"1.0.5"},"versions":{"1.0.0":{"name":"@cashpayyy/sdk","version":"1.0.0","keywords":["cashpay","payment","gateway","upi","payin","payout","settlement","india"],"author":{"name":"CashPay"},"license":"MIT","_id":"@cashpayyy/sdk@1.0.0","maintainers":[{"name":"cashpayy","email":"badusha000@gmail.com"}],"homepage":"https://github.com/cashpay/cashpay-node-sdk#readme","bugs":{"url":"https://github.com/cashpay/cashpay-node-sdk/issues"},"dist":{"shasum":"8e59760548b1f9b4600dce09ec35e65015663c16","tarball":"https://registry.npmjs.org/@cashpayyy/sdk/-/sdk-1.0.0.tgz","fileCount":4,"integrity":"sha512-Zr4JzwJkHtq+GK0QavMPMUCgh3LsBVc+3HNwId8onpDXge/9dcM4aivbSVdZoV1jVVldn2Scr/FXU2fBgaKWqw==","signatures":[{"sig":"MEQCIB+HhbjvqcX3IUIqogw7IFknDLmIft8t/25xLbht1VCOAiA3q7NioUeN8b7MCM4xfM4VhiF7Xc65wEgbV28Le7K91w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":63484},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=16.0.0"},"gitHead":"ba48b361618bc35eb6957a67c361478135c1bb4b","scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"cashpayy","email":"badusha000@gmail.com"},"repository":{"url":"git+https://github.com/cashpay/cashpay-node-sdk.git","type":"git"},"_npmVersion":"11.5.2","description":"Official CashPay Payment Gateway SDK for Node.js","directories":{},"_nodeVersion":"22.18.0","dependencies":{"axios":"^1.13.2"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^20.19.29"},"_npmOperationalInternal":{"tmp":"tmp/sdk_1.0.0_1771556375470_0.49833686614933326","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@cashpayyy/sdk","version":"1.0.3","keywords":["cashpay","payment","gateway","upi","payin","payout","settlement","india"],"author":{"name":"CashPay"},"license":"MIT","_id":"@cashpayyy/sdk@1.0.3","maintainers":[{"name":"cashpayy","email":"badusha000@gmail.com"}],"homepage":"https://github.com/cashpay/cashpay-node-sdk#readme","bugs":{"url":"https://github.com/cashpay/cashpay-node-sdk/issues"},"dist":{"shasum":"e867ce07c92579a565f36968b74a8ba340b179c4","tarball":"https://registry.npmjs.org/@cashpayyy/sdk/-/sdk-1.0.3.tgz","fileCount":4,"integrity":"sha512-V5hh6xThMjkUKrwCeegaTAq6WyGgHM9eLSlrFmBHmqtPQkVf06TxYAZBQwG/p7luf7rOFTxz52oLP1RnAETeEg==","signatures":[{"sig":"MEUCIQCsSAQ1LQP4deRS/j1fl9fvNPddLxyPnzKH8bw+u9+42wIgaI3g9lu4EdGGUlLmjeHtHxk8452fpbyX69gBlQS0QYw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":77316},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=16.0.0"},"gitHead":"ba48b361618bc35eb6957a67c361478135c1bb4b","scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"cashpayy","email":"badusha000@gmail.com"},"repository":{"url":"git+https://github.com/cashpay/cashpay-node-sdk.git","type":"git"},"_npmVersion":"11.5.2","description":"Official CashPay Payment Gateway SDK for Node.js","directories":{},"_nodeVersion":"22.18.0","dependencies":{"axios":"^1.13.2"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^20.19.29"},"_npmOperationalInternal":{"tmp":"tmp/sdk_1.0.3_1771558885053_0.21672606768761837","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"@cashpayyy/sdk","version":"1.0.4","keywords":["cashpay","payment","gateway","upi","payin","payout","settlement","india"],"author":{"name":"CashPay"},"license":"MIT","_id":"@cashpayyy/sdk@1.0.4","maintainers":[{"name":"cashpayy","email":"badusha000@gmail.com"}],"homepage":"https://github.com/cashpay/cashpay-node-sdk#readme","bugs":{"url":"https://github.com/cashpay/cashpay-node-sdk/issues"},"dist":{"shasum":"2f2eacd567ff366be34f53948c80f0af21a2c0cf","tarball":"https://registry.npmjs.org/@cashpayyy/sdk/-/sdk-1.0.4.tgz","fileCount":4,"integrity":"sha512-pvkDs0gb8xZSwnHB9dAVj/Btko0ZoCjCejKMgnHhU8O0mQs1UYIWT4jVefIw2pePrEdBOHl2RJVQoVnugNRauQ==","signatures":[{"sig":"MEQCIDStBSYaczD0uFzws4Ycuw7xkB0MjlheoG503mChuJeBAiBDNAx/mdUfOAwkEoGm88sI9o0EURqYEVgrEAYmfAcolQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":80166},"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=16.0.0"},"gitHead":"e4460fe65e205aec4b6238a91cd3f179192e3f44","scripts":{"test":"jest","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"cashpayy","email":"badusha000@gmail.com"},"repository":{"url":"git+https://github.com/cashpay/cashpay-node-sdk.git","type":"git"},"_npmVersion":"11.5.2","description":"Official CashPay Payment Gateway SDK for Node.js","directories":{},"_nodeVersion":"22.18.0","dependencies":{"axios":"^1.13.2"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^20.19.29"},"_npmOperationalInternal":{"tmp":"tmp/sdk_1.0.4_1771572755663_0.3469500712711129","host":"s3://npm-registry-packages-npm-production"}},"1.0.5":{"name":"@cashpayyy/sdk","version":"1.0.5","description":"Official CashPay Payment Gateway SDK for Node.js","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","test":"jest","prepublishOnly":"npm run build"},"keywords":["cashpay","payment","gateway","upi","payin","payout","settlement","india"],"author":{"name":"CashPay"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/cashpay/cashpay-node-sdk.git"},"dependencies":{"axios":"^1.13.2"},"devDependencies":{"@types/node":"^20.19.29","typescript":"^5.9.3"},"engines":{"node":">=16.0.0"},"_id":"@cashpayyy/sdk@1.0.5","gitHead":"38f5583e9468c1e38a71b156a1a1be96f703a092","bugs":{"url":"https://github.com/cashpay/cashpay-node-sdk/issues"},"homepage":"https://github.com/cashpay/cashpay-node-sdk#readme","_nodeVersion":"22.18.0","_npmVersion":"11.5.2","dist":{"integrity":"sha512-vMe1UdL7O/3GiWlOGGVDfKoiKlu3aLmqk4icWHI8smgV/Q8bwA5JO5H8nMgHhzk90IyJ4PM0fKIxu8BGBHaxew==","shasum":"1aeb995238970bf56ea6e9b783c033d205cf6867","tarball":"https://registry.npmjs.org/@cashpayyy/sdk/-/sdk-1.0.5.tgz","fileCount":4,"unpackedSize":80424,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIFiCgJ9RKxUxOeC6jf9Nj/mmmfM0v9Eh3BPROM0yyIn7AiEAg9KyDNelpdNROTdgKMyyGKkQt5QVL6pNv+xBGyvNttY="}]},"_npmUser":{"name":"cashpayy","email":"badusha000@gmail.com"},"directories":{},"maintainers":[{"name":"cashpayy","email":"badusha000@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/sdk_1.0.5_1771574613815_0.28478158391579744"},"_hasShrinkwrap":false}},"time":{"created":"2026-02-20T02:59:35.380Z","modified":"2026-02-20T08:03:34.099Z","1.0.0":"2026-02-20T02:59:35.620Z","1.0.3":"2026-02-20T03:41:25.183Z","1.0.4":"2026-02-20T07:32:35.843Z","1.0.5":"2026-02-20T08:03:33.960Z"},"bugs":{"url":"https://github.com/cashpay/cashpay-node-sdk/issues"},"author":{"name":"CashPay"},"license":"MIT","homepage":"https://github.com/cashpay/cashpay-node-sdk#readme","keywords":["cashpay","payment","gateway","upi","payin","payout","settlement","india"],"repository":{"type":"git","url":"git+https://github.com/cashpay/cashpay-node-sdk.git"},"description":"Official CashPay Payment Gateway SDK for Node.js","maintainers":[{"name":"cashpayy","email":"badusha000@gmail.com"}],"readme":"# CashPay Node.js SDK\r\n\r\nOfficial Node.js SDK for integrating with CashPay Payment Gateway.\r\n\r\n## Installation\r\n\r\n```bash\r\nnpm install @cashpayyy/sdk\r\n# or\r\nyarn add @cashpayyy/sdk\r\n```\r\n\r\n## Quick Start\r\n\r\n```typescript\r\nimport CashPay from '@cashpayyy/sdk';\r\n\r\nconst cashpay = new CashPay({\r\n  apiKey: 'cpk_live_xxx',\r\n  apiSecret: 'cps_live_xxx',\r\n  environment: 'production' // or 'sandbox'\r\n});\r\n```\r\n\r\n## Usage Examples\r\n\r\n### Check Balance\r\n\r\n```typescript\r\n// Get unified balance\r\nconst balance = await cashpay.balance.get();\r\nconsole.log(`Total Balance: ₹${balance.totalBalance / 100}`);\r\n\r\n// Get settlement balance\r\nconst settlement = await cashpay.balance.getSettlement();\r\nconsole.log(`Available for withdrawal: ₹${settlement.availableWithdrawalAmount / 100}`);\r\n\r\n// Get payout balance\r\nconst payout = await cashpay.balance.getPayout();\r\nconsole.log(`Payout Balance: ₹${payout.payoutBalance / 100}`);\r\n```\r\n\r\n### Payins (Check Payment Status)\r\n\r\n```typescript\r\n// Get payin by order ID\r\nconst payin = await cashpay.payins.getByOrderId('ORDER_12345');\r\nconsole.log(`Status: ${payin.status}, UTR: ${payin.utr}`);\r\n\r\n// Get payin status by payment ID\r\nconst status = await cashpay.payins.getStatus('payment-uuid');\r\n\r\n// Create an Intent Payment (Minimal)\r\nconst minimalIntent = await cashpay.payins.createIntent({\r\n  amount: 1000, \r\n  orderId: 'ORDER_12345'\r\n});\r\n\r\n// Create an Intent Payment (Full)\r\nconst intent = await cashpay.payins.createIntent({\r\n  amount: 5000,\r\n  orderId: 'ORDER_67890',\r\n  customerName: 'John Doe',\r\n  customerPhone: '9999999999',\r\n  customerEmail: 'user@example.com',\r\n  returnUrl: 'https://yoursite.com/payment/result'\r\n});\r\nconsole.log(`Intent URL: ${intent.intentUrl}`);\r\n\r\n// Create a Hosted Payment Page (Direct Redirect Flow)\r\nconst page = await cashpay.payins.createPaymentPage({\r\n  amount: 10000, // ₹100.00\r\n  orderId: 'ORDER_54321', // Your custom order ID\r\n  customerName: 'John Doe',\r\n  customerEmail: 'user@example.com',\r\n  customerPhone: '9999999999',\r\n  description: 'Purchase of premium subscription',\r\n  returnUrl: 'https://yoursite.com/payment/result' \r\n});\r\nconsole.log(`Hosted Checkout URL: ${page.paymentUrl}`);\r\n\r\n// Create a Card Payment\r\nconst card = await cashpay.payins.createCard({\r\n  amount: 5000,\r\n  orderId: 'ORDER_444',\r\n  cardNumber: '4111222233334444',\r\n  cvv: '123',\r\n  expiryMonth: '12',\r\n  expiryYear: '2026',\r\n  cardHolderName: 'John Doe',\r\n  customerPhone: '9999999999'\r\n});\r\n\r\n// Create a NetBanking Payment\r\nconst netbanking = await cashpay.payins.createNetBanking({\r\n  amount: 2500,\r\n  orderId: 'ORDER_555',\r\n  bankCode: 'HDFC',\r\n  customerPhone: '9999999999',\r\n  returnUrl: 'https://yoursite.com/done'\r\n});\r\n\r\n// Create a UPI Collect Payment\r\nconst upiCollect = await cashpay.payins.createUpiCollect({\r\n  amount: 1500,\r\n  orderId: 'ORDER_666',\r\n  vpa: 'john@upi'\r\n});\r\n\r\n// Create a Wallet Payment\r\nconst wallet = await cashpay.payins.createWallet({\r\n  amount: 800,\r\n  orderId: 'ORDER_777',\r\n  walletProvider: 'PAYTM',\r\n  customerPhone: '9999999999'\r\n});\r\n```\r\n\r\n### Payouts\r\n\r\n```typescript\r\n// Create a payout\r\nconst payout = await cashpay.payouts.create({\r\n  beneficiaryId: 'ben_xxx',\r\n  amount: 10000, // ₹100 in paise\r\n  referenceId: 'PAY-001',\r\n  narration: 'Salary payment',\r\n  mode: 'IMPS'\r\n}, 'unique-idempotency-key');\r\n\r\nconsole.log(`Payout ID: ${payout.id}, Status: ${payout.status}`);\r\n\r\n// Create bulk payouts (max 100)\r\nconst bulkResult = await cashpay.payouts.createBulk([\r\n  { beneficiaryId: 'ben_1', amount: 10000, referenceId: 'PAY-001' },\r\n  { beneficiaryId: 'ben_2', amount: 20000, referenceId: 'PAY-002' },\r\n], 'bulk-idempotency-key');\r\n\r\nconsole.log(`Success: ${bulkResult.successCount}, Failed: ${bulkResult.failureCount}`);\r\n\r\n// List payouts\r\nconst payouts = await cashpay.payouts.list({ page: 1, limit: 20, status: 'COMPLETED' });\r\n\r\n// Get payout by ID\r\nconst payoutDetails = await cashpay.payouts.get('payout-uuid');\r\n\r\n// Get payout by reference ID\r\nconst payoutByRef = await cashpay.payouts.getByReferenceId('PAY-001');\r\n\r\n// Cancel payout\r\nconst cancelled = await cashpay.payouts.cancel('payout-uuid');\r\n```\r\n\r\n### Settlements\r\n\r\n```typescript\r\n// Create settlement with saved bank account\r\nconst settlement = await cashpay.settlements.create({\r\n  amount: 100000, // ₹1000 in paise\r\n  bankAccountId: 'bank_xxx',\r\n  referenceId: 'SET-001'\r\n}, 'unique-idempotency-key');\r\n\r\n// Create settlement with direct bank details\r\nconst directSettlement = await cashpay.settlements.create({\r\n  amount: 100000,\r\n  accountNumber: '50100123456789',\r\n  ifsc: 'HDFC0001234',\r\n  accountHolderName: 'John Doe',\r\n  referenceId: 'SET-002'\r\n});\r\n\r\n// Create bulk settlements\r\nconst bulkSettlements = await cashpay.settlements.createBulk([\r\n  { amount: 50000, bankAccountId: 'bank_1', referenceId: 'SET-001' },\r\n  { amount: 75000, bankAccountId: 'bank_2', referenceId: 'SET-002' },\r\n]);\r\n\r\n// List settlements\r\nconst settlements = await cashpay.settlements.list({ status: 'COMPLETED' });\r\n\r\n// Get settlement by ID\r\nconst settlementDetails = await cashpay.settlements.get('settlement-uuid');\r\n\r\n// Cancel settlement\r\nconst cancelledSettlement = await cashpay.settlements.cancel('settlement-uuid');\r\n```\r\n\r\n### Payment Links\r\n\r\n```typescript\r\n// Create a payment link\r\nconst link = await cashpay.paymentLinks.create({\r\n  amount: 50000, // ₹500\r\n  description: 'Invoice #001',\r\n  customerName: 'John Doe',\r\n  customerPhone: '9876543210',\r\n  type: 'one-time', // or 'reusable'\r\n  outputType: 'link', // 'link' or 'qr'\r\n});\r\nconsole.log(`Payment Link: ${link.shortUrl}`);\r\n\r\n// List payment links\r\nconst links = await cashpay.paymentLinks.list({ page: 1, limit: 10, status: 'active' });\r\n\r\n// Get link details\r\nconst linkDetails = await cashpay.paymentLinks.get('link-uuid');\r\n\r\n// Deactivate link\r\nconst inactiveLink = await cashpay.paymentLinks.deactivate('link-uuid');\r\n\r\n// Download QR Code buffer\r\nconst qrBuffer = await cashpay.paymentLinks.downloadQr('link-uuid', 500); // 500px size\r\n\r\n// List Available Gateways\r\nconst { gateways } = await cashpay.paymentLinks.getGateways();\r\n```\r\n\r\n### Beneficiaries\r\n\r\n```typescript\r\n// Create a beneficiary\r\nconst beneficiary = await cashpay.beneficiaries.create({\r\n  name: 'John Doe',\r\n  email: 'john@example.com',\r\n  phone: '9999999999'\r\n});\r\n\r\n// List beneficiaries\r\nconst beneficiaries = await cashpay.beneficiaries.list({ page: 1, limit: 10 });\r\n\r\n// Get beneficiary by ID\r\nconst benDetails = await cashpay.beneficiaries.get('ben_xxx');\r\n\r\n// Update beneficiary\r\nconst updatedBen = await cashpay.beneficiaries.update('ben_xxx', {\r\n  name: 'John Smith'\r\n});\r\n\r\n// Delete beneficiary\r\nawait cashpay.beneficiaries.delete('ben_xxx');\r\n```\r\n\r\n### Bank Accounts\r\n\r\n```typescript\r\n// Add a bank account to a beneficiary\r\nconst account = await cashpay.bankAccounts.create({\r\n  beneficiaryId: 'ben_xxx',\r\n  accountNumber: '50100123456789',\r\n  ifsc: 'HDFC0001234',\r\n  accountHolderName: 'John Doe'\r\n});\r\n\r\n// List bank accounts\r\nconst accounts = await cashpay.bankAccounts.list();\r\n\r\n// Get bank account by ID\r\nconst accountDetails = await cashpay.bankAccounts.get('bank_xxx');\r\n\r\n// Delete bank account\r\nawait cashpay.bankAccounts.delete('bank_xxx');\r\n```\r\n\r\n### Webhook Verification\r\n\r\n```typescript\r\nimport express from 'express';\r\n\r\nconst app = express();\r\n\r\napp.post('/webhook', express.raw({ type: 'application/json' }), (req, res) => {\r\n  const signature = req.headers['x-webhook-signature'] as string;\r\n  const payload = req.body.toString();\r\n  \r\n  const isValid = cashpay.verifyWebhook(payload, signature, 'your-webhook-secret');\r\n  \r\n  if (!isValid) {\r\n    return res.status(401).send('Invalid signature');\r\n  }\r\n  \r\n  const event = JSON.parse(payload);\r\n  \r\n  switch (event.type) {\r\n    case 'payin.completed':\r\n      console.log('Payment completed:', event.data);\r\n      break;\r\n    case 'payout.completed':\r\n      console.log('Payout completed:', event.data);\r\n      break;\r\n    case 'settlement.completed':\r\n      console.log('Settlement completed:', event.data);\r\n      break;\r\n  }\r\n  \r\n  res.status(200).send('OK');\r\n});\r\n```\r\n\r\n## Error Handling\r\n\r\n```typescript\r\nimport CashPay, { CashPayError } from '@cashpayyy/sdk';\r\n\r\ntry {\r\n  const payout = await cashpay.payouts.create({\r\n    beneficiaryId: 'invalid-id',\r\n    amount: 10000\r\n  });\r\n} catch (error) {\r\n  if (error instanceof CashPayError) {\r\n    console.error(`Error: ${error.message}`);\r\n    console.error(`Status: ${error.statusCode}`);\r\n    console.error(`Code: ${error.code}`);\r\n    console.error(`Details:`, error.details);\r\n  }\r\n}\r\n```\r\n\r\n## Configuration Options\r\n\r\n| Option | Type | Default | Description |\r\n|--------|------|---------|-------------|\r\n| `apiKey` | string | required | Your API key (cpk_live_xxx or cpk_test_xxx) |\r\n| `apiSecret` | string | required | Your API secret |\r\n| `environment` | 'sandbox' \\| 'production' | 'production' | API environment |\r\n| `baseUrl` | string | auto | Custom API base URL |\r\n| `timeout` | number | 30000 | Request timeout in ms |\r\n\r\n## TypeScript Support\r\n\r\nThis SDK is written in TypeScript and includes full type definitions.\r\n\r\n```typescript\r\nimport CashPay, { \r\n  Payout, \r\n  Settlement, \r\n  Balance,\r\n  CreatePayoutParams,\r\n  CashPayError \r\n} from '@cashpayyy/sdk';\r\n```\r\n\r\n## Support\r\n\r\n- Documentation: https://docs.cashpay.com\r\n- Email: support@cashpay.com\r\n- GitHub Issues: https://github.com/cashpayyy/cashpay-node-sdk/issues\r\n","readmeFilename":"README.md"}