Customer Payments
A payment object describes details regarding a particular customer payment. There can be multiple payments for a single invoice. Multiple invoices can be paid in a single payment as well.
Possible error codes: 
| Error Code | Message | 
|---|---|
| 3004 | The Customer field can neither be blank nor incorrect. Please enter a correct Customer | 
| 9521 | Partial payment for retainer invoice is not allowed. Please record the full payment | 
| 9523 | Payment amount made to retainer invoice cannot be changed. You could instead delete it and add it back | 
| 24016 | The amount entered is more than the balance due for this invoice | 
Attribute
Maximum length allowed [2000]check, cash, creditcard, banktransfer, bankremittance, autotransaction or others. Maximum length [100]autotransaction. Refunds would be made to the respective card provided by the customer.Date Format [yyyy-mm-dd]success or failure.Maximum length of the reference number [100]Maximum length [100]{
    "payment_id": "9030000079467",
    "payment_mode": "cash",
    "amount": 450,
    "amount_refunded": 50,
    "bank_charges": 10,
    "date": "2016-06-05",
    "status": "success",
    "reference_number": "INV-384",
    "description": "Payment has been added to INV-384",
    "customer_id": "903000000000099",
    "customer_name": "Bowman Furniture",
    "email": "test@zylker.org",
    "invoices": [
        {
            "invoice_id": "90300000079426",
            "invoice_payment_id": "27161000000203281",
            "invoice_number": "INV-384",
            "date": "2016-06-05",
            "invoice_amount": 450,
            "amount_applied": 450,
            "balance_amount": 0
        }
    ],
    "currency_code": "USD",
    "currency_symbol": "$",
    "custom_fields": [
        {
            "customfield_id": 439910000000236000,
            "data_type": "number",
            "index": 1,
            "label": "Record Number",
            "show_on_pdf": true,
            "show_in_all_pdf": true,
            "value": 23
        }
    ]
}
          Create a payment
            Create a new payment.
              
              OAuth Scope : ZohoInvoice.customerpayments.CREATE
          
Arguments
check, cash, creditcard, banktransfer, bankremittance, autotransaction or others. Maximum length [100]Date Format [yyyy-mm-dd]Maximum length of the reference number [100]invoice_id, invoice_number, date, invoice_amount, amount_applied and balance_amount.Headers
parameters_data='{"field1":"value1","field2":"value2"}';
headers_data = Map();
headers_data.put("X-com-zoho-invoice-organizationid", "10234695");
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/invoice/v3/customerpayments"
type: POST
headers: headers_data
content-type: application/json
parameters: parameters_data
connection: <connection_name>
];
info response;
              OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"field1\":\"value1\",\"field2\":\"value2\"}");
Request request = new Request.Builder()
  .url("https://www.zohoapis.com/invoice/v3/customerpayments")
  .post(body)
  .addHeader("X-com-zoho-invoice-organizationid", "10234695")
  .addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
  .addHeader("content-type", "application/json")
  .build();
Response response = client.newCall(request).execute();
              const options = {
  method: 'POST',
  headers: {
    'X-com-zoho-invoice-organizationid': '10234695',
    Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f',
    'content-type': 'application/json'
  },
  body: '{"field1":"value1","field2":"value2"}'
};
fetch('https://www.zohoapis.com/invoice/v3/customerpayments', options)
  .then(response => response.json())
  .then(response => console.log(response))
  .catch(err => console.error(err));
              import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
payload = "{\"field1\":\"value1\",\"field2\":\"value2\"}"
headers = {
    'X-com-zoho-invoice-organizationid': "10234695",
    'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f",
    'content-type': "application/json"
    }
conn.request("POST", "/invoice/v3/customerpayments", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
              const http = require("https");
const options = {
  "method": "POST",
  "hostname": "www.zohoapis.com",
  "port": null,
  "path": "/invoice/v3/customerpayments",
  "headers": {
    "X-com-zoho-invoice-organizationid": "10234695",
    "Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f",
    "content-type": "application/json"
  }
};
const req = http.request(options, function (res) {
  const chunks = [];
  res.on("data", function (chunk) {
    chunks.push(chunk);
  });
  res.on("end", function () {
    const body = Buffer.concat(chunks);
    console.log(body.toString());
  });
});
req.write(JSON.stringify({field1: 'value1', field2: 'value2'}));
req.end();
              curl --request POST \
  --url https://www.zohoapis.com/invoice/v3/customerpayments \
  --header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \
  --header 'X-com-zoho-invoice-organizationid: 10234695' \
  --header 'content-type: application/json' \
  --data '{"field1":"value1","field2":"value2"}'
              {
    "customer_id": "903000000000099",
    "payment_mode": "cash",
    "amount": 450,
    "date": "2016-06-05",
    "reference_number": "INV-384",
    "description": "Payment has been added to INV-384",
    "invoices": [
        {
            "invoice_id": "90300000079426",
            "amount_applied": 450
        }
    ],
    "exchange_rate": 1,
    "payment_form": "cash",
    "bank_charges": 10,
    "custom_fields": [
        {
            "label": "Record Number",
            "value": 23
        }
    ]
}
            {
    "code": 0,
    "message": "The payment has been created.",
    "payment": {
        "payment_id": "9030000079467",
        "payment_mode": "cash",
        "amount": 450,
        "amount_refunded": 50,
        "bank_charges": 10,
        "date": "2016-06-05",
        "status": "success",
        "reference_number": "INV-384",
        "description": "Payment has been added to INV-384",
        "customer_id": "903000000000099",
        "customer_name": "Bowman Furniture",
        "email": "test@zylker.org",
        "invoices": [
            {
                "invoice_id": "90300000079426",
                "invoice_payment_id": "27161000000203281",
                "invoice_number": "INV-384",
                "date": "2016-06-05",
                "invoice_amount": 450,
                "amount_applied": 450,
                "balance_amount": 0
            }
        ],
        "currency_code": "USD",
        "currency_symbol": "$",
        "custom_fields": [
            {
                "customfield_id": 439910000000236000,
                "data_type": "number",
                "index": 1,
                "label": "Record Number",
                "show_on_pdf": true,
                "show_in_all_pdf": true,
                "value": 23
            }
        ]
    }
}
                List Customer Payments
            List all the payments made by your customer.
              
              OAuth Scope : ZohoInvoice.customerpayments.READ
          
Query Parameters
customer_name_startswith and customer_name_contains. Maximum length [100]reference_number_startswith and reference_number_contains. Maximum length [100]Date Format [yyyy-mm-dd]amount_less_than, amount_less_equals, amount_greater_than and amount_greater_equalsnotes_startswith and notes_containspayment_mode_startswith and payment_mode_containsPaymentMode.All, PaymentMode.Check, PaymentMode.Cash, PaymentMode.BankTransfer, PaymentMode.Paypal, PaymentMode.CreditCard, PaymentMode.GoogleCheckout, PaymentMode.Credit, PaymentMode.Authorizenet, PaymentMode.BankRemittance, PaymentMode.Payflowpro, PaymentMode.Stripe, PaymentMode.TwoCheckout, PaymentMode.Braintree and PaymentMode.OthersMaximum length [100]Headers
headers_data = Map();
headers_data.put("X-com-zoho-invoice-organizationid", "10234695");
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/invoice/v3/customerpayments"
type: GET
headers: headers_data
connection: <connection_name>
];
info response;
              OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
  .url("https://www.zohoapis.com/invoice/v3/customerpayments")
  .get()
  .addHeader("X-com-zoho-invoice-organizationid", "10234695")
  .addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
  .build();
Response response = client.newCall(request).execute();
              const options = {
  method: 'GET',
  headers: {
    'X-com-zoho-invoice-organizationid': '10234695',
    Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
  }
};
fetch('https://www.zohoapis.com/invoice/v3/customerpayments', options)
  .then(response => response.json())
  .then(response => console.log(response))
  .catch(err => console.error(err));
              import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
headers = {
    'X-com-zoho-invoice-organizationid': "10234695",
    'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
    }
conn.request("GET", "/invoice/v3/customerpayments", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
              const http = require("https");
const options = {
  "method": "GET",
  "hostname": "www.zohoapis.com",
  "port": null,
  "path": "/invoice/v3/customerpayments",
  "headers": {
    "X-com-zoho-invoice-organizationid": "10234695",
    "Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
  }
};
const req = http.request(options, function (res) {
  const chunks = [];
  res.on("data", function (chunk) {
    chunks.push(chunk);
  });
  res.on("end", function () {
    const body = Buffer.concat(chunks);
    console.log(body.toString());
  });
});
req.end();
              curl --request GET \
  --url https://www.zohoapis.com/invoice/v3/customerpayments \
  --header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \
  --header 'X-com-zoho-invoice-organizationid: 10234695'
              {
    "code": 0,
    "message": "success",
    "customerpayments": [
        {
            "payment_id": "9030000079467",
            "payment_number": "2",
            "invoice_number": "INV-384",
            "date": "2016-06-05",
            "payment_mode": "cash",
            "amount": 450,
            "bcy_amount": 450
        },
        {...},
        {...}
    ]
}
                Update custom field in existing customerpayments
            Update the value of the custom field in existing customerpayments.
              
              OAuth Scope : ZohoInvoice.customerpayments.UPDATE
          
Arguments
Path Parameters
Headers
parameters_data='{"field1":"value1","field2":"value2"}';
headers_data = Map();
headers_data.put("X-com-zoho-invoice-organizationid", "10234695");
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/invoice/v3/customerpayment/9030000079467/customfields"
type: PUT
headers: headers_data
content-type: application/json
parameters: parameters_data
connection: <connection_name>
];
info response;
              OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"field1\":\"value1\",\"field2\":\"value2\"}");
Request request = new Request.Builder()
  .url("https://www.zohoapis.com/invoice/v3/customerpayment/9030000079467/customfields")
  .put(body)
  .addHeader("X-com-zoho-invoice-organizationid", "10234695")
  .addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
  .addHeader("content-type", "application/json")
  .build();
Response response = client.newCall(request).execute();
              const options = {
  method: 'PUT',
  headers: {
    'X-com-zoho-invoice-organizationid': '10234695',
    Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f',
    'content-type': 'application/json'
  },
  body: '{"field1":"value1","field2":"value2"}'
};
fetch('https://www.zohoapis.com/invoice/v3/customerpayment/9030000079467/customfields', options)
  .then(response => response.json())
  .then(response => console.log(response))
  .catch(err => console.error(err));
              import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
payload = "{\"field1\":\"value1\",\"field2\":\"value2\"}"
headers = {
    'X-com-zoho-invoice-organizationid': "10234695",
    'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f",
    'content-type': "application/json"
    }
conn.request("PUT", "/invoice/v3/customerpayment/9030000079467/customfields", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
              const http = require("https");
const options = {
  "method": "PUT",
  "hostname": "www.zohoapis.com",
  "port": null,
  "path": "/invoice/v3/customerpayment/9030000079467/customfields",
  "headers": {
    "X-com-zoho-invoice-organizationid": "10234695",
    "Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f",
    "content-type": "application/json"
  }
};
const req = http.request(options, function (res) {
  const chunks = [];
  res.on("data", function (chunk) {
    chunks.push(chunk);
  });
  res.on("end", function () {
    const body = Buffer.concat(chunks);
    console.log(body.toString());
  });
});
req.write(JSON.stringify({field1: 'value1', field2: 'value2'}));
req.end();
              curl --request PUT \
  --url https://www.zohoapis.com/invoice/v3/customerpayment/9030000079467/customfields \
  --header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \
  --header 'X-com-zoho-invoice-organizationid: 10234695' \
  --header 'content-type: application/json' \
  --data '{"field1":"value1","field2":"value2"}'
              [
    {
        "customfield_id": "46000000012845",
        "value": 23
    }
]
            {
    "code": 0,
    "message": "Custom Fields Updated Successfully"
}
                Update a payment
            Update an existing payment information.
              
              OAuth Scope : ZohoInvoice.customerpayments.UPDATE
          
Arguments
check, cash, creditcard, banktransfer, bankremittance, autotransaction or others. Maximum length [100]Date Format [yyyy-mm-dd]Maximum length of the reference number [100]Path Parameters
Headers
parameters_data='{"field1":"value1","field2":"value2"}';
headers_data = Map();
headers_data.put("X-com-zoho-invoice-organizationid", "10234695");
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/invoice/v3/customerpayments/9030000079467"
type: PUT
headers: headers_data
content-type: application/json
parameters: parameters_data
connection: <connection_name>
];
info response;
              OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"field1\":\"value1\",\"field2\":\"value2\"}");
Request request = new Request.Builder()
  .url("https://www.zohoapis.com/invoice/v3/customerpayments/9030000079467")
  .put(body)
  .addHeader("X-com-zoho-invoice-organizationid", "10234695")
  .addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
  .addHeader("content-type", "application/json")
  .build();
Response response = client.newCall(request).execute();
              const options = {
  method: 'PUT',
  headers: {
    'X-com-zoho-invoice-organizationid': '10234695',
    Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f',
    'content-type': 'application/json'
  },
  body: '{"field1":"value1","field2":"value2"}'
};
fetch('https://www.zohoapis.com/invoice/v3/customerpayments/9030000079467', options)
  .then(response => response.json())
  .then(response => console.log(response))
  .catch(err => console.error(err));
              import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
payload = "{\"field1\":\"value1\",\"field2\":\"value2\"}"
headers = {
    'X-com-zoho-invoice-organizationid': "10234695",
    'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f",
    'content-type': "application/json"
    }
conn.request("PUT", "/invoice/v3/customerpayments/9030000079467", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
              const http = require("https");
const options = {
  "method": "PUT",
  "hostname": "www.zohoapis.com",
  "port": null,
  "path": "/invoice/v3/customerpayments/9030000079467",
  "headers": {
    "X-com-zoho-invoice-organizationid": "10234695",
    "Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f",
    "content-type": "application/json"
  }
};
const req = http.request(options, function (res) {
  const chunks = [];
  res.on("data", function (chunk) {
    chunks.push(chunk);
  });
  res.on("end", function () {
    const body = Buffer.concat(chunks);
    console.log(body.toString());
  });
});
req.write(JSON.stringify({field1: 'value1', field2: 'value2'}));
req.end();
              curl --request PUT \
  --url https://www.zohoapis.com/invoice/v3/customerpayments/9030000079467 \
  --header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \
  --header 'X-com-zoho-invoice-organizationid: 10234695' \
  --header 'content-type: application/json' \
  --data '{"field1":"value1","field2":"value2"}'
              {
    "customer_id": "903000000000099",
    "payment_mode": "cash",
    "amount": 450,
    "date": "2016-06-05",
    "reference_number": "INV-384",
    "description": "Payment has been added to INV-384",
    "invoices": [
        {
            "invoice_id": "90300000079426",
            "invoice_payment_id": "27161000000203281",
            "amount_applied": 450
        }
    ],
    "exchange_rate": 1,
    "payment_form": "cash",
    "bank_charges": 10,
    "custom_fields": [
        {
            "label": "Record Number",
            "value": 23
        }
    ]
}
            {
    "code": 0,
    "message": "The payment details have been updated.",
    "payment": {
        "payment_id": "9030000079467",
        "payment_mode": "cash",
        "amount": 450,
        "amount_refunded": 50,
        "bank_charges": 10,
        "date": "2016-06-05",
        "status": "success",
        "reference_number": "INV-384",
        "description": "Payment has been added to INV-384",
        "customer_id": "903000000000099",
        "customer_name": "Bowman Furniture",
        "email": "test@zylker.org",
        "invoices": [
            {
                "invoice_id": "90300000079426",
                "invoice_payment_id": "27161000000203281",
                "invoice_number": "INV-384",
                "date": "2016-06-05",
                "invoice_amount": 450,
                "amount_applied": 450,
                "balance_amount": 0
            }
        ],
        "currency_code": "USD",
        "currency_symbol": "$",
        "custom_fields": [
            {
                "customfield_id": 439910000000236000,
                "data_type": "number",
                "index": 1,
                "label": "Record Number",
                "show_on_pdf": true,
                "show_in_all_pdf": true,
                "value": 23
            }
        ]
    }
}
                Retrieve a payment
            Details of an existing payment.
              
              OAuth Scope : ZohoInvoice.customerpayments.READ
          
Path Parameters
Headers
headers_data = Map();
headers_data.put("X-com-zoho-invoice-organizationid", "10234695");
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/invoice/v3/customerpayments/9030000079467"
type: GET
headers: headers_data
connection: <connection_name>
];
info response;
              OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
  .url("https://www.zohoapis.com/invoice/v3/customerpayments/9030000079467")
  .get()
  .addHeader("X-com-zoho-invoice-organizationid", "10234695")
  .addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
  .build();
Response response = client.newCall(request).execute();
              const options = {
  method: 'GET',
  headers: {
    'X-com-zoho-invoice-organizationid': '10234695',
    Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
  }
};
fetch('https://www.zohoapis.com/invoice/v3/customerpayments/9030000079467', options)
  .then(response => response.json())
  .then(response => console.log(response))
  .catch(err => console.error(err));
              import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
headers = {
    'X-com-zoho-invoice-organizationid': "10234695",
    'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
    }
conn.request("GET", "/invoice/v3/customerpayments/9030000079467", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
              const http = require("https");
const options = {
  "method": "GET",
  "hostname": "www.zohoapis.com",
  "port": null,
  "path": "/invoice/v3/customerpayments/9030000079467",
  "headers": {
    "X-com-zoho-invoice-organizationid": "10234695",
    "Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
  }
};
const req = http.request(options, function (res) {
  const chunks = [];
  res.on("data", function (chunk) {
    chunks.push(chunk);
  });
  res.on("end", function () {
    const body = Buffer.concat(chunks);
    console.log(body.toString());
  });
});
req.end();
              curl --request GET \
  --url https://www.zohoapis.com/invoice/v3/customerpayments/9030000079467 \
  --header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \
  --header 'X-com-zoho-invoice-organizationid: 10234695'
              {
    "code": 0,
    "message": "success",
    "payment": {
        "payment_id": "9030000079467",
        "payment_mode": "cash",
        "amount": 450,
        "amount_refunded": 50,
        "bank_charges": 10,
        "date": "2016-06-05",
        "status": "success",
        "reference_number": "INV-384",
        "description": "Payment has been added to INV-384",
        "online_transaction_id": "",
        "customer_id": "903000000000099",
        "customer_name": "Bowman Furniture",
        "email": "test@zylker.org",
        "invoices": [
            {
                "invoice_id": "90300000079426",
                "invoice_payment_id": "27161000000203281",
                "invoice_number": "INV-384",
                "date": "2016-06-05",
                "invoice_amount": 450,
                "amount_applied": 450,
                "balance_amount": 0
            }
        ],
        "currency_code": "USD",
        "currency_symbol": "$",
        "custom_fields": [
            {
                "customfield_id": 439910000000236000,
                "data_type": "number",
                "index": 1,
                "label": "Record Number",
                "show_on_pdf": true,
                "show_in_all_pdf": true,
                "value": 23
            }
        ]
    }
}
                Delete a payment
            Delete an existing payment.
              
              OAuth Scope : ZohoInvoice.customerpayments.DELETE
          
Path Parameters
Headers
headers_data = Map();
headers_data.put("X-com-zoho-invoice-organizationid", "10234695");
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/invoice/v3/customerpayments/9030000079467"
type: DELETE
headers: headers_data
connection: <connection_name>
];
info response;
              OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
  .url("https://www.zohoapis.com/invoice/v3/customerpayments/9030000079467")
  .delete(null)
  .addHeader("X-com-zoho-invoice-organizationid", "10234695")
  .addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
  .build();
Response response = client.newCall(request).execute();
              const options = {
  method: 'DELETE',
  headers: {
    'X-com-zoho-invoice-organizationid': '10234695',
    Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
  }
};
fetch('https://www.zohoapis.com/invoice/v3/customerpayments/9030000079467', options)
  .then(response => response.json())
  .then(response => console.log(response))
  .catch(err => console.error(err));
              import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
headers = {
    'X-com-zoho-invoice-organizationid': "10234695",
    'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
    }
conn.request("DELETE", "/invoice/v3/customerpayments/9030000079467", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
              const http = require("https");
const options = {
  "method": "DELETE",
  "hostname": "www.zohoapis.com",
  "port": null,
  "path": "/invoice/v3/customerpayments/9030000079467",
  "headers": {
    "X-com-zoho-invoice-organizationid": "10234695",
    "Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
  }
};
const req = http.request(options, function (res) {
  const chunks = [];
  res.on("data", function (chunk) {
    chunks.push(chunk);
  });
  res.on("end", function () {
    const body = Buffer.concat(chunks);
    console.log(body.toString());
  });
});
req.end();
              curl --request DELETE \
  --url https://www.zohoapis.com/invoice/v3/customerpayments/9030000079467 \
  --header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \
  --header 'X-com-zoho-invoice-organizationid: 10234695'
              {
    "code": 0,
    "message": "The payment has been deleted."
}
                Refund an excess customer payment
            Refund the excess amount paid by the customer.
              
              OAuth Scope : ZohoInvoice.customerpayments.CREATE
          
Arguments
Date Format [yyyy-mm-dd]Maximum length [50]Maximum length of the reference number [100]Path Parameters
Headers
parameters_data='{"field1":"value1","field2":"value2"}';
headers_data = Map();
headers_data.put("X-com-zoho-invoice-organizationid", "10234695");
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/invoice/v3/customerpayments/9030000079467/refunds"
type: POST
headers: headers_data
content-type: application/json
parameters: parameters_data
connection: <connection_name>
];
info response;
              OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"field1\":\"value1\",\"field2\":\"value2\"}");
Request request = new Request.Builder()
  .url("https://www.zohoapis.com/invoice/v3/customerpayments/9030000079467/refunds")
  .post(body)
  .addHeader("X-com-zoho-invoice-organizationid", "10234695")
  .addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
  .addHeader("content-type", "application/json")
  .build();
Response response = client.newCall(request).execute();
              const options = {
  method: 'POST',
  headers: {
    'X-com-zoho-invoice-organizationid': '10234695',
    Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f',
    'content-type': 'application/json'
  },
  body: '{"field1":"value1","field2":"value2"}'
};
fetch('https://www.zohoapis.com/invoice/v3/customerpayments/9030000079467/refunds', options)
  .then(response => response.json())
  .then(response => console.log(response))
  .catch(err => console.error(err));
              import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
payload = "{\"field1\":\"value1\",\"field2\":\"value2\"}"
headers = {
    'X-com-zoho-invoice-organizationid': "10234695",
    'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f",
    'content-type': "application/json"
    }
conn.request("POST", "/invoice/v3/customerpayments/9030000079467/refunds", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
              const http = require("https");
const options = {
  "method": "POST",
  "hostname": "www.zohoapis.com",
  "port": null,
  "path": "/invoice/v3/customerpayments/9030000079467/refunds",
  "headers": {
    "X-com-zoho-invoice-organizationid": "10234695",
    "Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f",
    "content-type": "application/json"
  }
};
const req = http.request(options, function (res) {
  const chunks = [];
  res.on("data", function (chunk) {
    chunks.push(chunk);
  });
  res.on("end", function () {
    const body = Buffer.concat(chunks);
    console.log(body.toString());
  });
});
req.write(JSON.stringify({field1: 'value1', field2: 'value2'}));
req.end();
              curl --request POST \
  --url https://www.zohoapis.com/invoice/v3/customerpayments/9030000079467/refunds \
  --header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \
  --header 'X-com-zoho-invoice-organizationid: 10234695' \
  --header 'content-type: application/json' \
  --data '{"field1":"value1","field2":"value2"}'
              {
    "date": "2016-06-05",
    "refund_mode": "cash",
    "reference_number": "INV-384",
    "amount": 450,
    "exchange_rate": 1,
    "payment_form": "cash",
    "description": "Payment has been added to INV-384"
}
            {
    "code": 0,
    "message": "The refund information for this payment has been saved.",
    "payment_refunds": [
        {
            "payment_refund_id": "3000000003017",
            "payment_id": "9030000079467",
            "date": "2016-06-05",
            "refund_mode": "cash",
            "reference_number": "INV-384",
            "amount": 450,
            "exchange_rate": 1,
            "payment_form": "cash",
            "description": "Payment has been added to INV-384"
        },
        {...},
        {...}
    ]
}
                List refunds of a customer payment
            List all the refunds pertaining to an existing customer payment.
              
              OAuth Scope : ZohoInvoice.customerpayments.READ
          
Path Parameters
Query Parameters
Headers
headers_data = Map();
headers_data.put("X-com-zoho-invoice-organizationid", "10234695");
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/invoice/v3/customerpayments/9030000079467/refunds"
type: GET
headers: headers_data
connection: <connection_name>
];
info response;
              OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
  .url("https://www.zohoapis.com/invoice/v3/customerpayments/9030000079467/refunds")
  .get()
  .addHeader("X-com-zoho-invoice-organizationid", "10234695")
  .addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
  .build();
Response response = client.newCall(request).execute();
              const options = {
  method: 'GET',
  headers: {
    'X-com-zoho-invoice-organizationid': '10234695',
    Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
  }
};
fetch('https://www.zohoapis.com/invoice/v3/customerpayments/9030000079467/refunds', options)
  .then(response => response.json())
  .then(response => console.log(response))
  .catch(err => console.error(err));
              import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
headers = {
    'X-com-zoho-invoice-organizationid': "10234695",
    'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
    }
conn.request("GET", "/invoice/v3/customerpayments/9030000079467/refunds", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
              const http = require("https");
const options = {
  "method": "GET",
  "hostname": "www.zohoapis.com",
  "port": null,
  "path": "/invoice/v3/customerpayments/9030000079467/refunds",
  "headers": {
    "X-com-zoho-invoice-organizationid": "10234695",
    "Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
  }
};
const req = http.request(options, function (res) {
  const chunks = [];
  res.on("data", function (chunk) {
    chunks.push(chunk);
  });
  res.on("end", function () {
    const body = Buffer.concat(chunks);
    console.log(body.toString());
  });
});
req.end();
              curl --request GET \
  --url https://www.zohoapis.com/invoice/v3/customerpayments/9030000079467/refunds \
  --header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \
  --header 'X-com-zoho-invoice-organizationid: 10234695'
              {
    "code": 0,
    "message": "The list of refunds of the customer is displayed successfully.",
    "payment_refunds": [
        {
            "payment_refund_id": "3000000003017",
            "payment_id": "9030000079467",
            "date": "2016-06-05",
            "refund_mode": "cash",
            "reference_number": "INV-384",
            "payment_number": "2",
            "customer_name": "Bowman Furniture",
            "amount_bcy": 10,
            "amount_fcy": 10
        },
        {...},
        {...}
    ]
}
                Update a refund
            Update the refunded transaction.
              
              OAuth Scope : ZohoInvoice.customerpayments.UPDATE
          
Arguments
Date Format [yyyy-mm-dd]Maximum length [50]Maximum length of the reference number [100]Path Parameters
Headers
parameters_data='{"field1":"value1","field2":"value2"}';
headers_data = Map();
headers_data.put("X-com-zoho-invoice-organizationid", "10234695");
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/invoice/v3/customerpayments/9030000079467/refunds/3000000003017"
type: PUT
headers: headers_data
content-type: application/json
parameters: parameters_data
connection: <connection_name>
];
info response;
              OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"field1\":\"value1\",\"field2\":\"value2\"}");
Request request = new Request.Builder()
  .url("https://www.zohoapis.com/invoice/v3/customerpayments/9030000079467/refunds/3000000003017")
  .put(body)
  .addHeader("X-com-zoho-invoice-organizationid", "10234695")
  .addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
  .addHeader("content-type", "application/json")
  .build();
Response response = client.newCall(request).execute();
              const options = {
  method: 'PUT',
  headers: {
    'X-com-zoho-invoice-organizationid': '10234695',
    Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f',
    'content-type': 'application/json'
  },
  body: '{"field1":"value1","field2":"value2"}'
};
fetch('https://www.zohoapis.com/invoice/v3/customerpayments/9030000079467/refunds/3000000003017', options)
  .then(response => response.json())
  .then(response => console.log(response))
  .catch(err => console.error(err));
              import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
payload = "{\"field1\":\"value1\",\"field2\":\"value2\"}"
headers = {
    'X-com-zoho-invoice-organizationid': "10234695",
    'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f",
    'content-type': "application/json"
    }
conn.request("PUT", "/invoice/v3/customerpayments/9030000079467/refunds/3000000003017", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
              const http = require("https");
const options = {
  "method": "PUT",
  "hostname": "www.zohoapis.com",
  "port": null,
  "path": "/invoice/v3/customerpayments/9030000079467/refunds/3000000003017",
  "headers": {
    "X-com-zoho-invoice-organizationid": "10234695",
    "Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f",
    "content-type": "application/json"
  }
};
const req = http.request(options, function (res) {
  const chunks = [];
  res.on("data", function (chunk) {
    chunks.push(chunk);
  });
  res.on("end", function () {
    const body = Buffer.concat(chunks);
    console.log(body.toString());
  });
});
req.write(JSON.stringify({field1: 'value1', field2: 'value2'}));
req.end();
              curl --request PUT \
  --url https://www.zohoapis.com/invoice/v3/customerpayments/9030000079467/refunds/3000000003017 \
  --header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \
  --header 'X-com-zoho-invoice-organizationid: 10234695' \
  --header 'content-type: application/json' \
  --data '{"field1":"value1","field2":"value2"}'
              {
    "date": "2016-06-05",
    "refund_mode": "cash",
    "reference_number": "INV-384",
    "amount": 450,
    "exchange_rate": 1,
    "payment_form": "cash",
    "description": "Payment has been added to INV-384"
}
            {
    "code": 0,
    "message": "The refund information has been saved.",
    "payment_refunds": [
        {
            "payment_refund_id": "3000000003017",
            "payment_id": "9030000079467",
            "date": "2016-06-05",
            "refund_mode": "cash",
            "reference_number": "INV-384",
            "amount": 450,
            "exchange_rate": 1,
            "payment_form": "cash",
            "description": "Payment has been added to INV-384"
        },
        {...},
        {...}
    ]
}
                Details of a refund
            Obtain details of a particular refund of a customer payment.
              
              OAuth Scope : ZohoInvoice.customerpayments.READ
          
Path Parameters
Headers
headers_data = Map();
headers_data.put("X-com-zoho-invoice-organizationid", "10234695");
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/invoice/v3/customerpayments/9030000079467/refunds/3000000003017"
type: GET
headers: headers_data
connection: <connection_name>
];
info response;
              OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
  .url("https://www.zohoapis.com/invoice/v3/customerpayments/9030000079467/refunds/3000000003017")
  .get()
  .addHeader("X-com-zoho-invoice-organizationid", "10234695")
  .addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
  .build();
Response response = client.newCall(request).execute();
              const options = {
  method: 'GET',
  headers: {
    'X-com-zoho-invoice-organizationid': '10234695',
    Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
  }
};
fetch('https://www.zohoapis.com/invoice/v3/customerpayments/9030000079467/refunds/3000000003017', options)
  .then(response => response.json())
  .then(response => console.log(response))
  .catch(err => console.error(err));
              import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
headers = {
    'X-com-zoho-invoice-organizationid': "10234695",
    'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
    }
conn.request("GET", "/invoice/v3/customerpayments/9030000079467/refunds/3000000003017", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
              const http = require("https");
const options = {
  "method": "GET",
  "hostname": "www.zohoapis.com",
  "port": null,
  "path": "/invoice/v3/customerpayments/9030000079467/refunds/3000000003017",
  "headers": {
    "X-com-zoho-invoice-organizationid": "10234695",
    "Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
  }
};
const req = http.request(options, function (res) {
  const chunks = [];
  res.on("data", function (chunk) {
    chunks.push(chunk);
  });
  res.on("end", function () {
    const body = Buffer.concat(chunks);
    console.log(body.toString());
  });
});
req.end();
              curl --request GET \
  --url https://www.zohoapis.com/invoice/v3/customerpayments/9030000079467/refunds/3000000003017 \
  --header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \
  --header 'X-com-zoho-invoice-organizationid: 10234695'
              {
    "code": 0,
    "message": "The details of the refund are displayed successfully.",
    "payment_refunds": {
        "payment_refund_id": "3000000003017",
        "payment_id": "9030000079467",
        "date": "2016-06-05",
        "refund_mode": "cash",
        "reference_number": "INV-384",
        "amount": 450,
        "exchange_rate": 1,
        "payment_form": "cash",
        "description": "Payment has been added to INV-384"
    }
}
                Delete a Refund
            Delete refund pertaining to an existing customer payment.
              
              OAuth Scope : ZohoInvoice.customerpayments.DELETE
          
Path Parameters
Headers
headers_data = Map();
headers_data.put("X-com-zoho-invoice-organizationid", "10234695");
headers_data.put("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f");
response = invokeUrl
[
url: "https://www.zohoapis.com/invoice/v3/customerpayments/9030000079467/refunds/3000000003017"
type: DELETE
headers: headers_data
connection: <connection_name>
];
info response;
              OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
  .url("https://www.zohoapis.com/invoice/v3/customerpayments/9030000079467/refunds/3000000003017")
  .delete(null)
  .addHeader("X-com-zoho-invoice-organizationid", "10234695")
  .addHeader("Authorization", "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f")
  .build();
Response response = client.newCall(request).execute();
              const options = {
  method: 'DELETE',
  headers: {
    'X-com-zoho-invoice-organizationid': '10234695',
    Authorization: 'Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f'
  }
};
fetch('https://www.zohoapis.com/invoice/v3/customerpayments/9030000079467/refunds/3000000003017', options)
  .then(response => response.json())
  .then(response => console.log(response))
  .catch(err => console.error(err));
              import http.client
conn = http.client.HTTPSConnection("www.zohoapis.com")
headers = {
    'X-com-zoho-invoice-organizationid': "10234695",
    'Authorization': "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
    }
conn.request("DELETE", "/invoice/v3/customerpayments/9030000079467/refunds/3000000003017", headers=headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
              const http = require("https");
const options = {
  "method": "DELETE",
  "hostname": "www.zohoapis.com",
  "port": null,
  "path": "/invoice/v3/customerpayments/9030000079467/refunds/3000000003017",
  "headers": {
    "X-com-zoho-invoice-organizationid": "10234695",
    "Authorization": "Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f"
  }
};
const req = http.request(options, function (res) {
  const chunks = [];
  res.on("data", function (chunk) {
    chunks.push(chunk);
  });
  res.on("end", function () {
    const body = Buffer.concat(chunks);
    console.log(body.toString());
  });
});
req.end();
              curl --request DELETE \
  --url https://www.zohoapis.com/invoice/v3/customerpayments/9030000079467/refunds/3000000003017 \
  --header 'Authorization: Zoho-oauthtoken 1000.41d9xxxxxxxxxxxxxxxxxxxxxxxxc2d1.8fccxxxxxxxxxxxxxxxxxxxxxxxx125f' \
  --header 'X-com-zoho-invoice-organizationid: 10234695'
              {
    "code": 0,
    "message": "The refund has been deleted."
}