---
title: "Retrieve Invoice"
source_url: https://docs.rapyd.net/en/retrieve-invoice.html
lang: en
---

# Retrieve Invoice

Retrieve the basic data of an invoice, with individual invoice lines.

### Parameters

### Request Path Parameters

- - invoice
  - ID of the invoice you want to retrieve. String starting with **invoice_**.

### Request Header Parameters

- - access_key
  - Unique access key provided by Rapyd for each authorized user.

    See [Developers](https://docs.rapyd.net/en/developers.md "Developers").
- - Content-Type
  - Indicates that the data appears in JSON format. Set to **application/json**.
- - salt
  - Random string. Recommended length: 8-16 characters.
- - signature
  - Signature calculated for each request individually.

    See [Request Signatures](https://docs.rapyd.net/en/request-signatures.md "Request Signatures").
- - timestamp
  - Timestamp for the request, in [Unix time](https://docs.rapyd.net/en/glossary.md#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_unix_time "Unix time") (seconds).

### Response Parameters

- - attempt_count
  - Total number of attempts made to pay this invoice.
- - attempted
  - Indicates whether an attempt has been made to pay the invoice automatically.
- - automatic_attempt_count
  - Number of automatic attempts that Rapyd made to retry paying this invoice if it failed.
- - billing
  - Determines the method of billing at the end of the billing cycle. Set to **pay_automatically** - Rapyd generates a `payment` object, then attempts to pay it using the designated payment method.
- - billing_reason
  - The reason for billing. One of the following:

    - **subscription_cycle** - A new cycle for the subscription.
    - **subscription_create** - A new subscription has been created.
    - **manual** - Customer was billed manually.
    - **upcoming** - Customer has an upcoming billing invoice.
- - created_at
  - The time the invoice was created, in [Unix time](https://docs.rapyd.net/en/glossary.md#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_unix_time "Unix time").
- - currency
  - Three-letter ISO 4217 currency code for the currency used in all fields that refer to a monetary amount.
- - customer
  - ID of the customer that pays this invoice. String starting with **cus_**.
- - days_until_due
  - Number of days the customer has for paying this invoice. Integer.
- - description
  - Description of the invoice.
- - discount
  - Describes the discount that applies to this invoice. The source of the discount is one of the following:

    - If the invoice is generated manually, the discount is taken from the Customer object.
    - If the invoice is generated automatically from a subscription, the discount is taken from the Subscription object if it is defined there. Otherwise, it is taken from the Customer object.
- - discount_amount
  - The amount of the discount that was applied to this invoice.
- - due_date
  - The date payment is due on this invoice. This value is calculated from the date the invoice is created, plus the number of days specified in the `days_until_due` field. Relevant when `billing` is **send_invoice**. Format is in [Unix time](https://docs.rapyd.net/en/glossary.md#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_unix_time "Unix time").
- - id
  - ID of the invoice. String starting with **invoice_**.
- - lines
  - The individual line items that make up the invoice. These items are added with [Create Invoice](https://docs.rapyd.net/en/create-invoice.md "Create Invoice") or [Update Invoice](https://docs.rapyd.net/en/update-invoice.md "Update Invoice"). For details o the fields in the 'invoice_item' object, see [Create Invoice Item](https://docs.rapyd.net/en/create-invoice-item.md "Create Invoice Item").
- - metadata
  - A JSON object defined by the client. See [Metadata](https://docs.rapyd.net/en/metadata.md "Metadata").
- - next_payment_attempt
  - The time when the next payment attempt will be made, in [Unix time](https://docs.rapyd.net/en/glossary.md#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_unix_time "Unix time").
- - number
  - Invoice number, starting with the `invoice_prefix` specified in the Customer object.
- - payment
  - The 'payment' object that was generated for this invoice. For details of the fields in the 'payment' object, see [Create Payment](https://docs.rapyd.net/en/create-payment.md "Create Payment").
- - payment_fields
  - Additional `payment_options`.
- - payment_method
  - ID of the payment method for paying the invoice.
- - payout
  - Reserved.
- - payout_fields
  - Reserved.
- - period_end
  - Last date in the period covered by the invoice, in [Unix time](https://docs.rapyd.net/en/glossary.md#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_unix_time "Unix time").
- - period_start
  - First date in the period covered by the invoice, in [Unix time](https://docs.rapyd.net/en/glossary.md#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_unix_time "Unix time").
- - statement_descriptor
  - Description of the invoice for the customer's credit card statement. Limited to 22 characters.
- - status
  - An invoice moves through a series of statuses.

    - **draft** - Starting status for all invoices. The invoice can still be edited or deleted. The subscription's 'simultaneous_invoice' field determines when the status automatically moves to **open**. At any time, payment of the invoice via the 'Pay Invoice' method can move the invoice to another status.
    - **deleted** - An invoice can be deleted only when its status is **draft**. This action is usually done after an invoice is created due to an error.
    - **open** - The invoice has been finalized, and the system is now waiting for the payment to be completed by the customer. The invoice can no longer be edited.
    - **paid** - The paid status is used for invoices that are paid. Invoices are automatically marked as paid when payments are processed by Rapyd.
    - **void** - Voiding is similar to deleting an invoice, but keeps a record of when it was created, finalized, and voided. Invoices with a void status cannot be paid.
    - **uncollectible** - This invoice cannot be paid by the customer.
- - subscription
  - ID of the subscription that generates charges to this customer. String starting with **sub_**.
- - subtotal
  - Total of all line items before discount and before tax. Decimal.
- - tax
  - The amount of tax charged. Decimal. This is calculated as**T = R x (S - D)**, where:

    - **T** is the tax.
    - **R** is the tax rate in `tax_percent`.
    - **S** is the subtotal.
    - **D** is the discount.
- - tax_percent
  - The percentage tax rate that is applied to the subtotal of the invoice, after subtracting all discounts. Decimal, up to four decimal places. Range: 0-100
- - total
  - Total after discount and tax. Decimal.
- - type
  - The type of the subscription: **payment**

### Code Samples

- - .NET

    - ```csharp
      using System;

      namespace RapydApiRequestSample
      {
          class Program
          {
              static void Main(string[] args)
              {
                  try
                  {
                      string invoice = "invoice_9030474cc176d302d77cfa6f74acb746";

                      string result = RapydApiRequestSample.Utilities.MakeRequest("GET", $"/v1/invoices/{invoice}");

                      Console.WriteLine(result);
                  }
                  catch (Exception e)
                  {
                      Console.WriteLine("Error completing request: " + e.Message);
                  }
              }
          }
      }
      ```
- - JavaScript

    - ```javascript
      const makeRequest = require('<path-to-your-utility-file>/utilities').makeRequest;

      async function main() {
        try {
          const result = await makeRequest(
            'GET',
            '/v1/invoices/invoice_9030474cc176d302d77cfa6f74acb746'
          );

          console.log(result);
        } catch (error) {
          console.error('Error completing request', error);
        }
      }
      ```
- - PHP

    - ```php
      <?php
      $path .= "/<path-to-your-utility-file>/utilities.php";
      include($path);

      try {
          $object = make_request('get', "/v1/invoices/invoice_9030474cc176d302d77cfa6f74acb746");
          var_dump($object);
      } catch(Exception $e) {
          echo "Error => $e";
      }
      ?>
      ```
- - Python

    - ```python
      from pprint import pprint

      from utilities import make_request

      result = make_request(method='get', path='/v1/invoices/invoice_9030474cc176d302d77cfa6f74acb746')
      pprint(result)
      ```

- /v1/invoices/:invoice

- Retrieve Invoice
- ```curl
  curl -X get 'https://sandboxapi.rapyd.net/v1/invoices/invoice_e7a973caf0dd43e73707fe22767c268f' \
  -H 'access_key: your-access-key-here' \
  -H 'Content-Type: application/json' \
  -H 'salt: your-random-string-here' \
  -H 'signature: your-calculated-signature-here' \
  -H 'timestamp: your-unix-timestamp-here'
  ```
- ```json
  {
      "status": {
          "error_code": "",
          "status": "SUCCESS",
          "message": "",
          "response_code": "",
          "operation_id": "95f616a1-2d2c-4003-aa27-e58ac1ccc033"
      },
      "data": {
          "id": "invoice_e7a973caf0dd43e73707fe22767c268f",
          "attempt_count": 0,
          "billing": "pay_automatically",
          "billing_reason": "manual",
          "created_at": 1763561380,
          "currency": "USD",
          "customer": "cus_4e25112ac20e144ad073a614dc46934b",
          "description": "",
          "discount": null,
          "due_date": 1766153380,
          "days_until_due": 30,
          "metadata": {},
          "payment_method": "card_b9548d9b53a565b2315fecdc6c87f158",
          "payment": null,
          "payout": null,
          "payment_fields": null,
          "period_end": 0,
          "period_start": 0,
          "lines": [
              {
                  "id": "il_e89ff184af1324212edbd583afca20f6",
                  "amount": 19.99,
                  "currency": "USD",
                  "description": "Remaining time on  Unlimited Music after 18 Nov 2025",
                  "discountable": false,
                  "invoice_item": "ii_35411466a031d8ae7f283fc9d0076f96",
                  "metadata": {},
                  "period": {
                      "start": 1763462590,
                      "end": 1766054540
                  },
                  "proration": true,
                  "quantity": 1,
                  "plan": null,
                  "subscription": "sub_423cac7708b84939baf3d4a55b153a19",
                  "subscription_item": "",
                  "type": ""
              },
              {
                  "id": "il_b3c6cf1fb232587229bdf5b8eab56d42",
                  "amount": 9.99,
                  "currency": "USD",
                  "description": "Remaining time on  Unlimited Music after 18 Nov 2025",
                  "discountable": false,
                  "invoice_item": "ii_d1fa6c9c886b42a100a511655839d2ea",
                  "metadata": {},
                  "period": {
                      "start": 1763455774,
                      "end": 1766047667
                  },
                  "proration": true,
                  "quantity": 1,
                  "plan": null,
                  "subscription": "sub_e38643c5d8d59f4ccd8ae08f8cc61c8d",
                  "subscription_item": "",
                  "type": ""
              },
              {
                  "id": "il_cb62056ca87c4dc5a4cf5252d48ee65e",
                  "amount": 1050,
                  "currency": "USD",
                  "description": "",
                  "discountable": true,
                  "invoice_item": "ii_9da6c1053ce299a5b926299cab19be7f",
                  "metadata": {},
                  "period": {
                      "start": 0,
                      "end": 0
                  },
                  "proration": false,
                  "quantity": 1,
                  "plan": null,
                  "subscription": "",
                  "subscription_item": "",
                  "type": ""
              }
          ],
          "statement_descriptor": "",
          "subscription": "",
          "discount_amount": 0,
          "subtotal": 1079.98,
          "tax": 0,
          "tax_percent": 0,
          "total": 1079.98,
          "status": "draft",
          "payout_fields": null,
          "type": "payment"
      }
  }
  ```
