Skip to content

Latest commit

 

History

History

payouts

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 

Payouts API Guide

Please refer to the Cashfree Docs for the complete API reference.

Node version 10.9.0 was used for this SDK.

Get Started

In case of static IP (Your IP is whitelisted)
const { Payouts } = require('@cashfreepayments/cashfree-sdk');

// Initialize Cashfree Payouts
const payouts = new Payouts({
  env: 'TEST',
  clientId: '<CLIENT_ID>',
  clientSecret: '<CLIENT_SECRET>',
});
In case of dynamic IP you will need a public key for signature.
const { Payouts } = require('@cashfreepayments/cashfree-sdk');

// Initialize Cashfree Payouts
const payouts = new Payouts({
  env: 'TEST',
  clientId: '<CLIENT_ID>',
  clientSecret: '<CLIENT_SECRET>',
  pathToPublicKey: '/path/to/your/public/key/file.pem',
  publicKey: 'ALTERNATIVE TO SPECIFYING PATH (DIRECTLY PASTE PublicKey)',
});

Beneficiary

Contains all APIs related to beneficiary.

  • Add Beneficiary
    payouts.beneficiary
      .add({
        beneId: 'JOHN18012',
        name: 'john doe',
        email: 'johndoe@cashfree.com',
        phone: '9876543210',
        bankAccount: '00001111222233',
        ifsc: 'HDFC0000001',
        address1: 'ABC Street',
        city: 'Bangalore',
        state: 'Karnataka',
        pincode: '560001',
      })
      .then(function (response) {
        console.log(response);
      });
  • Get Beneficiary Details
    payouts.beneficiary
      .getById({
        beneId: 'JOHN18011',
      })
      .then(function (d) {
        console.log(d);
      });
  • Get Beneficiary Id
    payouts.beneficiary
      .getIdByBankDetails({
        bankAccount: '00001111222233',
        ifsc: 'HDFC0000001',
      })
      .then(function (d) {
        console.log(d);
      });
  • Remove Beneficiary
    payouts.beneficiary
      .remove({
        beneId: 'JOHN18011',
      })
      .then(function (d) {
        console.log(d);
      });

Transfers

Contains all APIs related to Transfers.

Initializing Transfers

  • Request Transfer

    payouts.transfers
      .requestTransfer({
        beneId: 'JOHN18012',
        amount: '100.00',
        transferId: 'DEC2017',
      })
      .then(function (d) {
        console.log(d);
      });
  • Get Transfer Status

    payouts.transfers
      .getTransferStatus({
        referenceId: '14057',
        transferId: 'JUNOB2018',
      })
      .then(function (d) {
        console.log(d);
      });
  • Get Transfers

    payouts.transfers
      .getTransfers({
        maxReturn: 10,
      })
      .then(function (d) {
        console.log(d);
      });
  • Request Batch Transfer

    payouts.transfers
      .requestBatchTransfer({
        batchTransferId: 'Test_Bank_Account_Format_45',
        batchFormat: 'BANK_ACCOUNT',
        deleteBene: 1,
        batch: [
          {
            transferId: 'PTM_00121241112',
            amount: '12',
            phone: '9999999999',
            bankAccount: '9999999999',
            ifsc: 'PYTM0_000001',
            email: 'bahrat@gocashfree.com',
            name: 'bharat',
          },
          {
            transferId: 'PTM_00052312126',
            amount: '12',
            phone: '9999999999',
            bankAccount: '9999999999',
            ifsc: 'PYTM0000001',
            email: 'bharat@gocashfree.com',
            name: 'bharat',
          },
          {
            transferId: 'PTM_0001321215',
            amount: '12',
            phone: '9999999999',
            bankAccount: '9999999999',
            ifsc: 'PYTM0000001',
            email: 'bahrat@gocashfree.com',
            name: 'bharat',
          },
        ],
      })
      .then(function (d) {
        console.log(d);
      });
  • Get Batch Transfer Status

    payouts.transfers
      .getBatchTransferStatus({
        batchTransferId: 'Test_Bank_Account_Format_45',
      })
      .then(function (d) {
        console.log(d);
      });

Validation

Contains all APIs related to Validation.

  • Validate Bank Details

    payouts.validation
      .validateBankDetails({
        name: 'JOHN',
        phone: '9908712345',
        bankAccount: '026291800001191',
        ifsc: 'YESB0000262',
      })
      .then(function (d) {
        console.log(d);
      });
  • Validate UPI Details

    payouts.validation
      .validateUPIDetails({
        name: 'Cashfree',
        vpa: 'success@upi',
      })
      .then(function (d) {
        console.log(d);
      });
  • Validate Bulk Bank Activation

    payouts.validation
      .validateBulkBankActivation({
        bulkValidationId: 'testid1',
        entries: [
          {
            name: 'Sameera Cashfree',
            bankAccount: '000890289871772',
            ifsc: 'SCBL0036078',
            phone: '9015991882',
          },
          {
            name: 'Cashfree Sameera',
            bankAccount: '0001001289877623',
            ifsc: 'SBIN0008752',
            phone: '9023991882',
          },
        ],
      })
      .then(function (d) {
        console.log(d);
      });
  • Get Bulk Validation Status

    payouts.validation
      .getBulkValidationStatus({
        bulkValidationId: 'testid1',
      })
      .then(function (d) {
        console.log(d);
      });

Cashgram

Contains all APIs related to Cashgram.

  • Create Cashgram
    payouts.cashgram
      .create({
        cashgramId: 'JOHaN10',
        amount: '1',
        name: 'john doe',
        email: 'johndoe@cashfree.com',
        phone: '9876543210',
        linkExpiry: '2018/09/12',
        remarks: 'api',
        notifyCustomer: 1,
      })
      .then(function (d) {
        console.log(d);
      });
  • Get Cashgram Status
    payouts.cashgram
      .getStatus({
        cashgramId: 'JOHaN10',
      })
      .then(function (d) {
        console.log(d);
      });
  • Deactivate Cashgram
    payouts.cashgram
      .deactivate({
        cashgramId: 'JOHaN10',
      })
      .then(function (d) {
        console.log(d);
      });

Common

  • Get Balance

    payouts.getBalance().then(function (d) {
      console.log(d);
    });
  • Self Withdrawal

    payouts
      .selfWithdrawal({
        withdrawalId: 'withdraw1',
        amount: 100,
        remarks: 'withdrawal request',
      })
      .then(function (d) {
        console.log(d);
      });