# Projection of Charges

**GET** `/rpy/be-subscription/v1/subscriptions/{subscription_id}/charges/projection`

Base URL: `https://api.pre.globalgetnet.com`

__Demonstrates the projection of charges__<br> <br>This endpoint returns a detailed projection of the upcoming charges for a specific subscription. It’s useful for understanding future billing dates and amounts, based on the subscription’s billing cycle and current configuration.<br> <br>**Usage Scenarios:**<br>_- Displaying upcoming charges to the customer in a client-facing dashboard.<br>- Validating recurring charge patterns for subscription-based products or services.<br>- Estimating revenue over time for analytics or forecasting.<br>- Confirming upcoming charges prior to executing renewals or retries._<br> <br>**Notes:**<br>_- The response includes one or multiple entries with projected charge amounts and due dates.<br>- It does **not** trigger any billing — this is a **read-only**, informational request.<br>- Helps identify issues like misaligned billing or incorrect values before they affect payment flows._

## Authorization

- PROD (oauth2)
- PRE (oauth2)
- SBX (oauth2)

## Path parameters

- `subscription_id` (string, required)
  Recurrence signature identifier.

## Query parameters

- `expand` (string)
  Additional information on the installment number and/or fluctuations in date and value. {installment,floating_data}
- `limit` (integer)

## Responses

### 200

Request made successfully

- `amount` (integer<int32>, required)
- `projection` (object[])
  - `installment` (integer<int32>)
  - `date` (string<date>, required)
  - `amount` (integer<int32>, required)
  - `floating_data` (object)
    - `new_date` (string<date>)
    - `new_amount` (integer<int32>)

Example:

```json
{
  "amount": 0,
  "projection": [
    {
      "installment": 0,
      "date": "2024-01-01",
      "amount": 0,
      "floating_data": {
        "new_date": "2024-01-01",
        "new_amount": 0
      }
    }
  ]
}
```

### 400

Invalid Requisition

- `message` (string)
  Detailed error message.
- `name` (string)
  Name of the module or system in which the error occurred.
- `status_code` (integer<int32>)
  HTTP status code of the error.
- `details` (object[])
  Error details.
  - `status` (string)
    Error situation.
  - `error_code` (string)
    Error code.
  - `description` (string)
    Description of the error.
  - `description_detail` (string)
    Detailed description of the error.
  - `brand` (string)
    Brand.
  - `payment_id` (string)
    payment_id.
  - `seller_id` (string)
    seller_id.
  - `amount` (string)
    amount.
  - `currency` (string)
    currency.
  - `order_id` (string)
    order_id.
  - `credit_cancel` (object)
    credit_cancel.
    - `canceled_at` (string)
      canceledAt.
    - `message` (string)
      message.
  - `payment_tag` (string)
    payment_tag.
  - `status_code` (string)
    statusCode.
  - `message` (string)
    message.
  - `name` (string)
    name.
  - `acquirer_transaction_id` (string)
    acquirer_transaction_id.
  - `authorization_code` (string)
    authorization_code.
  - `transaction_id` (string)
    transaction_id.
  - `reason_code` (string)
    reason_code.
  - `reason_message` (string)
    reason_message.
  - `merchant_advice_code` (string)
    merchant_advice_code.
- `payments` (object[])
  Error details.
  - `status` (string)
    Error situation.
  - `error_code` (string)
    Error code.
  - `description` (string)
    Description of the error.
  - `description_detail` (string)
    Detailed description of the error.
  - `brand` (string)
    Brand.
  - `payment_id` (string)
    payment_id.
  - `seller_id` (string)
    seller_id.
  - `amount` (string)
    amount.
  - `currency` (string)
    currency.
  - `order_id` (string)
    order_id.
  - `credit_cancel` (object)
    credit_cancel.
    - `canceled_at` (string)
      canceledAt.
    - `message` (string)
      message.
  - `payment_tag` (string)
    payment_tag.
  - `status_code` (string)
    statusCode.
  - `message` (string)
    message.
  - `name` (string)
    name.
  - `acquirer_transaction_id` (string)
    acquirer_transaction_id.
  - `authorization_code` (string)
    authorization_code.
  - `transaction_id` (string)
    transaction_id.
  - `reason_code` (string)
    reason_code.
  - `reason_message` (string)
    reason_message.
  - `merchant_advice_code` (string)
    merchant_advice_code.
- `combined_id` (string)
  combinedId.
- `order_id` (string)
  orderId.
- `seller_id` (string)
  sellerId.

Example:

```json
{
  "message": "string",
  "name": "string",
  "status_code": 0,
  "details": [
    {
      "status": "string",
      "error_code": "string",
      "description": "string",
      "description_detail": "string",
      "brand": "string",
      "payment_id": "string",
      "seller_id": "string",
      "amount": "string",
      "currency": "string",
      "order_id": "string",
      "credit_cancel": {
        "canceled_at": "string",
        "message": "string"
      },
      "payment_tag": "string",
      "status_code": "string",
      "message": "string",
      "name": "string",
      "acquirer_transaction_id": "string",
      "authorization_code": "string",
      "transaction_id": "string",
      "reason_code": "string",
      "reason_message": "string",
      "merchant_advice_code": "string"
    }
  ],
  "payments": [
    {
      "status": "string",
      "error_code": "string",
      "description": "string",
      "description_detail": "string",
      "brand": "string",
      "payment_id": "string",
      "seller_id": "string",
      "amount": "string",
      "currency": "string",
      "order_id": "string",
      "credit_cancel": {
        "canceled_at": "string",
        "message": "string"
      },
      "payment_tag": "string",
      "status_code": "string",
      "message": "string",
      "name": "string",
      "acquirer_transaction_id": "string",
      "authorization_code": "string",
      "transaction_id": "string",
      "reason_code": "string",
      "reason_message": "string",
      "merchant_advice_code": "string"
    }
  ],
  "combined_id": "string",
  "order_id": "string",
  "seller_id": "string"
}
```

### 404

Not Found

- `message` (string)
  Detailed error message.
- `name` (string)
  Name of the module or system in which the error occurred.
- `status_code` (integer<int32>)
  HTTP status code of the error.
- `details` (object[])
  Error details.
  - `status` (string)
    Error situation.
  - `error_code` (string)
    Error code.
  - `description` (string)
    Description of the error.
  - `description_detail` (string)
    Detailed description of the error.
  - `brand` (string)
    Brand.
  - `payment_id` (string)
    payment_id.
  - `seller_id` (string)
    seller_id.
  - `amount` (string)
    amount.
  - `currency` (string)
    currency.
  - `order_id` (string)
    order_id.
  - `credit_cancel` (object)
    credit_cancel.
    - `canceled_at` (string)
      canceledAt.
    - `message` (string)
      message.
  - `payment_tag` (string)
    payment_tag.
  - `status_code` (string)
    statusCode.
  - `message` (string)
    message.
  - `name` (string)
    name.
  - `acquirer_transaction_id` (string)
    acquirer_transaction_id.
  - `authorization_code` (string)
    authorization_code.
  - `transaction_id` (string)
    transaction_id.
  - `reason_code` (string)
    reason_code.
  - `reason_message` (string)
    reason_message.
  - `merchant_advice_code` (string)
    merchant_advice_code.
- `payments` (object[])
  Error details.
  - `status` (string)
    Error situation.
  - `error_code` (string)
    Error code.
  - `description` (string)
    Description of the error.
  - `description_detail` (string)
    Detailed description of the error.
  - `brand` (string)
    Brand.
  - `payment_id` (string)
    payment_id.
  - `seller_id` (string)
    seller_id.
  - `amount` (string)
    amount.
  - `currency` (string)
    currency.
  - `order_id` (string)
    order_id.
  - `credit_cancel` (object)
    credit_cancel.
    - `canceled_at` (string)
      canceledAt.
    - `message` (string)
      message.
  - `payment_tag` (string)
    payment_tag.
  - `status_code` (string)
    statusCode.
  - `message` (string)
    message.
  - `name` (string)
    name.
  - `acquirer_transaction_id` (string)
    acquirer_transaction_id.
  - `authorization_code` (string)
    authorization_code.
  - `transaction_id` (string)
    transaction_id.
  - `reason_code` (string)
    reason_code.
  - `reason_message` (string)
    reason_message.
  - `merchant_advice_code` (string)
    merchant_advice_code.
- `combined_id` (string)
  combinedId.
- `order_id` (string)
  orderId.
- `seller_id` (string)
  sellerId.

Example:

```json
{
  "message": "string",
  "name": "string",
  "status_code": 0,
  "details": [
    {
      "status": "string",
      "error_code": "string",
      "description": "string",
      "description_detail": "string",
      "brand": "string",
      "payment_id": "string",
      "seller_id": "string",
      "amount": "string",
      "currency": "string",
      "order_id": "string",
      "credit_cancel": {
        "canceled_at": "string",
        "message": "string"
      },
      "payment_tag": "string",
      "status_code": "string",
      "message": "string",
      "name": "string",
      "acquirer_transaction_id": "string",
      "authorization_code": "string",
      "transaction_id": "string",
      "reason_code": "string",
      "reason_message": "string",
      "merchant_advice_code": "string"
    }
  ],
  "payments": [
    {
      "status": "string",
      "error_code": "string",
      "description": "string",
      "description_detail": "string",
      "brand": "string",
      "payment_id": "string",
      "seller_id": "string",
      "amount": "string",
      "currency": "string",
      "order_id": "string",
      "credit_cancel": {
        "canceled_at": "string",
        "message": "string"
      },
      "payment_tag": "string",
      "status_code": "string",
      "message": "string",
      "name": "string",
      "acquirer_transaction_id": "string",
      "authorization_code": "string",
      "transaction_id": "string",
      "reason_code": "string",
      "reason_message": "string",
      "merchant_advice_code": "string"
    }
  ],
  "combined_id": "string",
  "order_id": "string",
  "seller_id": "string"
}
```

### 422

Unprocessable Entity

- `message` (string)
  Detailed error message.
- `name` (string)
  Name of the module or system in which the error occurred.
- `status_code` (integer<int32>)
  HTTP status code of the error.
- `details` (object[])
  Error details.
  - `status` (string)
    Error situation.
  - `error_code` (string)
    Error code.
  - `description` (string)
    Description of the error.
  - `description_detail` (string)
    Detailed description of the error.
  - `brand` (string)
    Brand.
  - `payment_id` (string)
    payment_id.
  - `seller_id` (string)
    seller_id.
  - `amount` (string)
    amount.
  - `currency` (string)
    currency.
  - `order_id` (string)
    order_id.
  - `credit_cancel` (object)
    credit_cancel.
    - `canceled_at` (string)
      canceledAt.
    - `message` (string)
      message.
  - `payment_tag` (string)
    payment_tag.
  - `status_code` (string)
    statusCode.
  - `message` (string)
    message.
  - `name` (string)
    name.
  - `acquirer_transaction_id` (string)
    acquirer_transaction_id.
  - `authorization_code` (string)
    authorization_code.
  - `transaction_id` (string)
    transaction_id.
  - `reason_code` (string)
    reason_code.
  - `reason_message` (string)
    reason_message.
  - `merchant_advice_code` (string)
    merchant_advice_code.
- `payments` (object[])
  Error details.
  - `status` (string)
    Error situation.
  - `error_code` (string)
    Error code.
  - `description` (string)
    Description of the error.
  - `description_detail` (string)
    Detailed description of the error.
  - `brand` (string)
    Brand.
  - `payment_id` (string)
    payment_id.
  - `seller_id` (string)
    seller_id.
  - `amount` (string)
    amount.
  - `currency` (string)
    currency.
  - `order_id` (string)
    order_id.
  - `credit_cancel` (object)
    credit_cancel.
    - `canceled_at` (string)
      canceledAt.
    - `message` (string)
      message.
  - `payment_tag` (string)
    payment_tag.
  - `status_code` (string)
    statusCode.
  - `message` (string)
    message.
  - `name` (string)
    name.
  - `acquirer_transaction_id` (string)
    acquirer_transaction_id.
  - `authorization_code` (string)
    authorization_code.
  - `transaction_id` (string)
    transaction_id.
  - `reason_code` (string)
    reason_code.
  - `reason_message` (string)
    reason_message.
  - `merchant_advice_code` (string)
    merchant_advice_code.
- `combined_id` (string)
  combinedId.
- `order_id` (string)
  orderId.
- `seller_id` (string)
  sellerId.

Example:

```json
{
  "message": "string",
  "name": "string",
  "status_code": 0,
  "details": [
    {
      "status": "string",
      "error_code": "string",
      "description": "string",
      "description_detail": "string",
      "brand": "string",
      "payment_id": "string",
      "seller_id": "string",
      "amount": "string",
      "currency": "string",
      "order_id": "string",
      "credit_cancel": {
        "canceled_at": "string",
        "message": "string"
      },
      "payment_tag": "string",
      "status_code": "string",
      "message": "string",
      "name": "string",
      "acquirer_transaction_id": "string",
      "authorization_code": "string",
      "transaction_id": "string",
      "reason_code": "string",
      "reason_message": "string",
      "merchant_advice_code": "string"
    }
  ],
  "payments": [
    {
      "status": "string",
      "error_code": "string",
      "description": "string",
      "description_detail": "string",
      "brand": "string",
      "payment_id": "string",
      "seller_id": "string",
      "amount": "string",
      "currency": "string",
      "order_id": "string",
      "credit_cancel": {
        "canceled_at": "string",
        "message": "string"
      },
      "payment_tag": "string",
      "status_code": "string",
      "message": "string",
      "name": "string",
      "acquirer_transaction_id": "string",
      "authorization_code": "string",
      "transaction_id": "string",
      "reason_code": "string",
      "reason_message": "string",
      "merchant_advice_code": "string"
    }
  ],
  "combined_id": "string",
  "order_id": "string",
  "seller_id": "string"
}
```

### 500

Internal server or service error

- `message` (string)
  Detailed error message.
- `name` (string)
  Name of the module or system in which the error occurred.
- `status_code` (integer<int32>)
  HTTP status code of the error.
- `details` (object[])
  Error details.
  - `status` (string)
    Error situation.
  - `error_code` (string)
    Error code.
  - `description` (string)
    Description of the error.
  - `description_detail` (string)
    Detailed description of the error.
  - `brand` (string)
    Brand.
  - `payment_id` (string)
    payment_id.
  - `seller_id` (string)
    seller_id.
  - `amount` (string)
    amount.
  - `currency` (string)
    currency.
  - `order_id` (string)
    order_id.
  - `credit_cancel` (object)
    credit_cancel.
    - `canceled_at` (string)
      canceledAt.
    - `message` (string)
      message.
  - `payment_tag` (string)
    payment_tag.
  - `status_code` (string)
    statusCode.
  - `message` (string)
    message.
  - `name` (string)
    name.
  - `acquirer_transaction_id` (string)
    acquirer_transaction_id.
  - `authorization_code` (string)
    authorization_code.
  - `transaction_id` (string)
    transaction_id.
  - `reason_code` (string)
    reason_code.
  - `reason_message` (string)
    reason_message.
  - `merchant_advice_code` (string)
    merchant_advice_code.
- `payments` (object[])
  Error details.
  - `status` (string)
    Error situation.
  - `error_code` (string)
    Error code.
  - `description` (string)
    Description of the error.
  - `description_detail` (string)
    Detailed description of the error.
  - `brand` (string)
    Brand.
  - `payment_id` (string)
    payment_id.
  - `seller_id` (string)
    seller_id.
  - `amount` (string)
    amount.
  - `currency` (string)
    currency.
  - `order_id` (string)
    order_id.
  - `credit_cancel` (object)
    credit_cancel.
    - `canceled_at` (string)
      canceledAt.
    - `message` (string)
      message.
  - `payment_tag` (string)
    payment_tag.
  - `status_code` (string)
    statusCode.
  - `message` (string)
    message.
  - `name` (string)
    name.
  - `acquirer_transaction_id` (string)
    acquirer_transaction_id.
  - `authorization_code` (string)
    authorization_code.
  - `transaction_id` (string)
    transaction_id.
  - `reason_code` (string)
    reason_code.
  - `reason_message` (string)
    reason_message.
  - `merchant_advice_code` (string)
    merchant_advice_code.
- `combined_id` (string)
  combinedId.
- `order_id` (string)
  orderId.
- `seller_id` (string)
  sellerId.

Example:

```json
{
  "message": "string",
  "name": "string",
  "status_code": 0,
  "details": [
    {
      "status": "string",
      "error_code": "string",
      "description": "string",
      "description_detail": "string",
      "brand": "string",
      "payment_id": "string",
      "seller_id": "string",
      "amount": "string",
      "currency": "string",
      "order_id": "string",
      "credit_cancel": {
        "canceled_at": "string",
        "message": "string"
      },
      "payment_tag": "string",
      "status_code": "string",
      "message": "string",
      "name": "string",
      "acquirer_transaction_id": "string",
      "authorization_code": "string",
      "transaction_id": "string",
      "reason_code": "string",
      "reason_message": "string",
      "merchant_advice_code": "string"
    }
  ],
  "payments": [
    {
      "status": "string",
      "error_code": "string",
      "description": "string",
      "description_detail": "string",
      "brand": "string",
      "payment_id": "string",
      "seller_id": "string",
      "amount": "string",
      "currency": "string",
      "order_id": "string",
      "credit_cancel": {
        "canceled_at": "string",
        "message": "string"
      },
      "payment_tag": "string",
      "status_code": "string",
      "message": "string",
      "name": "string",
      "acquirer_transaction_id": "string",
      "authorization_code": "string",
      "transaction_id": "string",
      "reason_code": "string",
      "reason_message": "string",
      "merchant_advice_code": "string"
    }
  ],
  "combined_id": "string",
  "order_id": "string",
  "seller_id": "string"
}
```

### 502

The service is unavailable. Please try again later.

- `amount` (integer<int32>, required)
- `projection` (object[])
  - `installment` (integer<int32>)
  - `date` (string<date>, required)
  - `amount` (integer<int32>, required)
  - `floating_data` (object)
    - `new_date` (string<date>)
    - `new_amount` (integer<int32>)

Example:

```json
{
  "amount": 0,
  "projection": [
    {
      "installment": 0,
      "date": "2024-01-01",
      "amount": 0,
      "floating_data": {
        "new_date": "2024-01-01",
        "new_amount": 0
      }
    }
  ]
}
```