ok
Direktori : /home2/selectio/www/myclassicfit.com-1/vendor/razorpay/razorpay/documents/ |
Current File : //home2/selectio/www/myclassicfit.com-1/vendor/razorpay/razorpay/documents/invoice.md |
## Invoices ### Create Invoice Request #1 In this example, an invoice is created using the customer and item details. Here, the customer and item are created while creating the invoice. ```php $api->invoice->create(array ('type' => 'invoice','description' => 'Invoice for the month of January 2020','partial_payment' => true,'customer' =>array ('name' => 'Gaurav Kumar','contact' => 9999999999,'email' => 'gaurav.kumar@example.com','billing_address' => array ('line1' => 'Ground & 1st Floor, SJR Cyber Laskar','line2' => 'Hosur Road','zipcode' => '560068','city' => 'Bengaluru','state' => 'Karnataka','country' => 'in'),'shipping_address' => array ('line1' => 'Ground & 1st Floor, SJR Cyber Laskar','line2' => 'Hosur Road','zipcode' => '560068','city' => 'Bengaluru','state' => 'Karnataka','country' => 'in')),'line_items' => array (array ('name' => 'Master Cloud Computing in 30 Days','description' => 'Book by Ravena Ravenclaw','amount' => 399,'currency' => 'USD','quantity' => 1)),'sms_notify' => 1,'email_notify' => 1,'currency' => 'USD','expire_by' => 1589765167)); ``` **Parameters:** | Name | Type | Description | |-----------------|---------|------------------------------------------------------------------------------| |type* | string | entity type (here its invoice) | |description | string | A brief description of the invoice. | |customer_id | string | customer id for which invoice need be raised | |draft | string | Invoice is created in draft state when value is set to `1` | | customer* | array | All parameters listed [here](https://razorpay.com/docs/api/payments/invoices/#create-an-invoice) are supported | | line_items | array | All parameters listed [here](https://razorpay.com/docs/api/payments/invoices/#create-an-invoice) are supported | |expire_by | array | Details of the line item that is billed in the invoice. | |sms_notify | array | Details of the line item that is billed in the invoice. | |email_notify | array | Details of the line item that is billed in the invoice. | |partial_payment | boolean | Indicates whether customers can make partial payments on the invoice . Possible values: true - Customer can make partial payments. false (default) - Customer cannot make partial payments. | | currency* | string | The currency of the payment (defaults to INR) | Request #2 In this example, an invoice is created using existing `customer_id` and `item_id` ```php $api->invoice->create(array ('type' => 'invoice','date' => 1589994898, 'customer_id'=> 'cust_E7q0trFqXgExmT', 'line_items'=>array(array('item_id'=>'item_DRt61i2NnL8oy6')))); ``` **Parameters:** | Name | Type | Description | |-----------------|---------|------------------------------------------------------------------------------| |type* | string | entity type (here its invoice) | |description | string | A brief description of the invoice. | |customer_id | string | customer id for which invoice need be raised | | customer* | array | All parameters listed [here](https://razorpay.com/docs/api/payments/invoices/#create-an-invoice) are supported | | line_items | array | All parameters listed [here](https://razorpay.com/docs/api/payments/invoices/#create-an-invoice) are supported | | sms_notify | boolean | SMS notifications are to be sent by Razorpay (default : 1) | | currency* (conditionally mandatory) | string | The 3-letter ISO currency code for the payment. Currently, only `INR` is supported. | | email_notify | boolean | Email notifications are to be sent by Razorpay (default : 1) | | expire_by | integer | The timestamp, in Unix format, till when the customer can make the authorization payment. | **Response:** For create invoice response please click [here](https://razorpay.com/docs/api/invoices/#create-an-invoice) ------------------------------------------------------------------------------------------------------- ### Fetch all invoices ```php $api->invoice->all(); ``` **Parameters:** | Name | Type | Description | |-----------------|---------|------------------------------------------------------------------------------| |type | string | entity type (here its invoice) | |payment_id | string | The unique identifier of the payment made by the customer against the invoice. | |customer_id | string | The unique identifier of the customer. | |receipt | string | The unique receipt number that you entered for internal purposes. | **Response:** For fetch all invoice response please click [here](https://razorpay.com/docs/api/invoices/#fetch-multiple-invoices) ------------------------------------------------------------------------------------------------------- ### Fetch invoice ```php $api->invoice->fetch($invoiceId); ``` **Parameters:** | Name | Type | Description | |-----------------|---------|------------------------------------------------------------------------------| | invoiceId* | string | The id of the invoice to be fetched | **Response:** ```json { "amount": 1000, "amount_due": 1000, "amount_paid": 0, "billing_end": null, "billing_start": null, "cancelled_at": null, "comment": null, "created_at": 1653596202, "currency": "INR", "currency_symbol": "₹", "customer_details": { "billing_address": null, "contact": "99991111999", "customer_contact": "99991111999", "customer_email": "gauraa.kumar@example.com", "customer_name": "Gauravss Kumar", "email": "gauraa.kumar@example.com", "gstin": null, "id": "cust_JDdNazagOgg9Ig", "name": "Gauravss Kumar", "shipping_address": null }, "customer_id": "cust_JDdNazagOgg9Ig", "date": 1589994898, "description": null, "email_status": "sent", "entity": "invoice", "expire_by": null, "expired_at": null, "first_payment_min_amount": null, "gross_amount": 1000, "group_taxes_discounts": false, "id": "inv_JZz7g9hSZS9IsG", "idempotency_key": null, "invoice_number": null, "issued_at": 1653596202, "line_items": [ { "amount": 1000, "currency": "INR", "description": null, "gross_amount": 1000, "hsn_code": null, "id": "li_JZz7gAI2W3Arg2", "item_id": "item_J7lZCyxMVeEtYB", "name": "Test item", "net_amount": 1000, "quantity": 1, "ref_id": null, "ref_type": null, "sac_code": null, "tax_amount": 0, "tax_inclusive": false, "tax_rate": null, "taxable_amount": 1000, "taxes": [], "type": "invoice", "unit": null, "unit_amount": 1000 } ], "notes": [], "order_id": "order_JZz7gBTZjtUgBO", "paid_at": null, "partial_payment": false, "payment_id": null, "receipt": null, "reminder_status": null, "short_url": "https://rzp.io/i/DGpanoT", "sms_status": "pending", "status": "issued", "subscription_status": null, "supply_state_code": null, "tax_amount": 0, "taxable_amount": 1000, "terms": null, "type": "invoice", "user_id": null, "view_less": true } ``` ------------------------------------------------------------------------------------------------------- ### Update invoice ```php $api->invoice->fetch($invoiceId)->edit(array('line_items' => array(array('id' => 'li_DAweOizsysoJU6','name' => 'Book / English August - Updated name and quantity','quantity' => 1),array('name' => 'Book / A Wild Sheep Chase','amount' => 200,'currency' => 'INR','quantity' => 1)),'notes' => array('updated-key' => 'An updated note.'))); ``` **Parameters:** | Name | Type | Description | |-----------------|---------|------------------------------------------------------------------------------| | invoiceId* | string | The id of the invoice to be fetched | | line_items | array | All parameters listed [here](https://razorpay.com/docs/api/payments/invoices/#update-an-invoice) are supported | | notes | array | key value pair | **Response:** ```json { "id": "inv_DAweOiQ7amIUVd", "entity": "invoice", "receipt": "#0961", "invoice_number": "#0961", "customer_id": "cust_DAtUWmvpktokrT", "customer_details": { "id": "cust_DAtUWmvpktokrT", "name": "Gaurav Kumar", "email": "gaurav.kumar@example.com", "contact": "9977886633", "gstin": null, "billing_address": { "id": "addr_DAtUWoxgu91obl", "type": "billing_address", "primary": true, "line1": "318 C-Wing, Suyog Co. Housing Society Ltd.", "line2": "T.P.S Road, Vazira, Borivali", "zipcode": "400092", "city": "Mumbai", "state": "Maharashtra", "country": "in" }, "shipping_address": null, "customer_name": "Gaurav Kumar", "customer_email": "gaurav.kumar@example.com", "customer_contact": "9977886633" }, "order_id": null, "line_items": [ { "id": "li_DAweOizsysoJU6", "item_id": null, "name": "Book / English August - Updated name and quantity", "description": "150 points in Quidditch", "amount": 400, "unit_amount": 400, "gross_amount": 400, "tax_amount": 0, "taxable_amount": 400, "net_amount": 400, "currency": "INR", "type": "invoice", "tax_inclusive": false, "hsn_code": null, "sac_code": null, "tax_rate": null, "unit": null, "quantity": 1, "taxes": [] } ], "payment_id": null, "status": "draft", "expire_by": 1567103399, "issued_at": null, "paid_at": null, "cancelled_at": null, "expired_at": null, "sms_status": null, "email_status": null, "date": 1566891149, "terms": null, "partial_payment": false, "gross_amount": 600, "tax_amount": 0, "taxable_amount": 600, "amount": 600, "amount_paid": null, "amount_due": null, "currency": "INR", "currency_symbol": "₹", "description": "This is a test invoice.", "notes": { "updated-key": "An updated note." }, "comment": null, "short_url": null, "view_less": true, "billing_start": null, "billing_end": null, "type": "invoice", "group_taxes_discounts": false, "created_at": 1566906474, "idempotency_key": null } ``` ------------------------------------------------------------------------------------------------------- ### Issue an invoice Only an invoice in the `draft` state can be issued. ```php $api->invoice->fetch($invoiceId)->issue(); ``` **Parameters:** | Name | Type | Description | |-----------------|---------|------------------------------------------------------------------------------| | invoiceId* | string | The id of the invoice to be issued | **Response:** ```json { "id": "inv_DAweOiQ7amIUVd", "entity": "invoice", "receipt": "#0961", "invoice_number": "#0961", "customer_id": "cust_DAtUWmvpktokrT", "customer_details": { "id": "cust_DAtUWmvpktokrT", "name": "Gaurav Kumar", "email": "gaurav.kumar@example.com", "contact": "9977886633", "gstin": null, "billing_address": { "id": "addr_DAtUWoxgu91obl", "type": "billing_address", "primary": true, "line1": "318 C-Wing, Suyog Co. Housing Society Ltd.", "line2": "T.P.S Road, Vazira, Borivali", "zipcode": "400092", "city": "Mumbai", "state": "Maharashtra", "country": "in" }, "shipping_address": null, "customer_name": "Gaurav Kumar", "customer_email": "gaurav.kumar@example.com", "customer_contact": "9977886633" }, "order_id": "order_DBG3P8ZgDd1dsG", "line_items": [ { "id": "li_DAweOizsysoJU6", "item_id": null, "name": "Book / English August - Updated name and quantity", "description": "150 points in Quidditch", "amount": 400, "unit_amount": 400, "gross_amount": 400, "tax_amount": 0, "taxable_amount": 400, "net_amount": 400, "currency": "INR", "type": "invoice", "tax_inclusive": false, "hsn_code": null, "sac_code": null, "tax_rate": null, "unit": null, "quantity": 1, "taxes": [] }, { "id": "li_DAwjWQUo07lnjF", "item_id": null, "name": "Book / A Wild Sheep Chase", "description": null, "amount": 200, "unit_amount": 200, "gross_amount": 200, "tax_amount": 0, "taxable_amount": 200, "net_amount": 200, "currency": "INR", "type": "invoice", "tax_inclusive": false, "hsn_code": null, "sac_code": null, "tax_rate": null, "unit": null, "quantity": 1, "taxes": [] } ], "payment_id": null, "status": "issued", "expire_by": 1567103399, "issued_at": 1566974805, "paid_at": null, "cancelled_at": null, "expired_at": null, "sms_status": null, "email_status": null, "date": 1566891149, "terms": null, "partial_payment": false, "gross_amount": 600, "tax_amount": 0, "taxable_amount": 600, "amount": 600, "amount_paid": 0, "amount_due": 600, "currency": "INR", "currency_symbol": "₹", "description": "This is a test invoice.", "notes": { "updated-key": "An updated note." }, "comment": null, "short_url": "https://rzp.io/i/K8Zg72C", "view_less": true, "billing_start": null, "billing_end": null, "type": "invoice", "group_taxes_discounts": false, "created_at": 1566906474, "idempotency_key": null } ``` ------------------------------------------------------------------------------------------------------- ### Delete an invoice ```php $api->invoice->fetch($invoiceId)->delete(); ``` **Parameters:** | Name | Type | Description | |-----------------|---------|------------------------------------------------------------------------------| | invoiceId* | string | The id of the invoice to be deleted | **Response:** ``` [] ``` ------------------------------------------------------------------------------------------------------- ### Cancel an invoice ```php $api->invoice->fetch($invoiceId)->cancel(); ``` **Parameters:** | Name | Type | Description | |-----------------|---------|------------------------------------------------------------------------------| | invoiceId* | string | The id of the invoice to be cancelled | **Response:** ```json { "amount": 1000, "amount_due": 1000, "amount_paid": 0, "billing_end": null, "billing_start": null, "cancelled_at": 1654159207, "comment": null, "created_at": 1653596202, "currency": "INR", "currency_symbol": "₹", "customer_details": { "billing_address": null, "contact": "99991111999", "customer_contact": "99991111999", "customer_email": "gauraa.kumar@example.com", "customer_name": "Gauravss Kumar", "email": "gauraa.kumar@example.com", "gstin": null, "id": "cust_JDdNazagOgg9Ig", "name": "Gauravss Kumar", "shipping_address": null }, "customer_id": "cust_JDdNazagOgg9Ig", "date": 1589994898, "description": null, "email_status": "sent", "entity": "invoice", "expire_by": null, "expired_at": null, "first_payment_min_amount": null, "gross_amount": 1000, "group_taxes_discounts": false, "id": "inv_JZz7g9hSZS9IsG", "idempotency_key": null, "invoice_number": null, "issued_at": 1653596202, "line_items": [ { "amount": 1000, "currency": "INR", "description": null, "gross_amount": 1000, "hsn_code": null, "id": "li_JZz7gAI2W3Arg2", "item_id": "item_J7lZCyxMVeEtYB", "name": "Test item", "net_amount": 1000, "quantity": 1, "ref_id": null, "ref_type": null, "sac_code": null, "tax_amount": 0, "tax_inclusive": false, "tax_rate": null, "taxable_amount": 1000, "taxes": [], "type": "invoice", "unit": null, "unit_amount": 1000 } ], "notes": [], "order_id": "order_JZz7gBTZjtUgBO", "paid_at": null, "partial_payment": false, "payment_id": null, "receipt": null, "reminder_status": null, "short_url": "https://rzp.io/i/DGpanoT", "sms_status": "pending", "status": "cancelled", "subscription_status": null, "supply_state_code": null, "tax_amount": 0, "taxable_amount": 1000, "terms": null, "type": "invoice", "user_id": null, "view_less": true } ``` ------------------------------------------------------------------------------------------------------- ### Send notification ```php $api->invoice->fetch($invoiceId)->notifyBy($medium); ``` **Parameters:** | Name | Type | Description | |-----------------|---------|------------------------------------------------------------------------------| | invoiceId* | string | The id of the invoice to be notified | | medium* | string | `sms`/`email`, Medium through which notification should be sent. | **Response:** ```json { "success": true } ``` ------------------------------------------------------------------------------------------------------- **PN: * indicates mandatory fields** <br> <br> **For reference click [here](https://razorpay.com/docs/api/invoices)**