# Check Transfers
> Check Transfers move funds from your Increase account by mailing a physical check.

[Events](https://increase.com/documentation/events.md) will be generated for this resource. The possible event categories are: `check_transfer.created` and `check_transfer.updated`.

## The Check Transfer object
### Example
```json
{
  "account_id": "account_in71c4amph0vgo2qllky",
  "account_number": "987654321",
  "amount": 1000,
  "approval": null,
  "approved_inbound_check_deposit_id": "inbound_check_deposit_zoshvqybq0cjjm31mra",
  "balance_check": null,
  "cancellation": null,
  "check_number": "123",
  "created_at": "2020-01-31T23:59:59Z",
  "created_by": {
    "category": "user",
    "user": {
      "email": "user@example.com"
    }
  },
  "currency": "USD",
  "fulfillment_method": "physical_check",
  "id": "check_transfer_30b43acfu9vw8fyc4f5",
  "idempotency_key": null,
  "mailing": {
    "mailed_at": "2020-01-31T23:59:59Z"
  },
  "pending_transaction_id": "pending_transaction_k1sfetcau2qbvjbzgju4",
  "physical_check": {
    "attachment_file_id": null,
    "check_voucher_image_file_id": null,
    "mailing_address": {
      "city": "New York",
      "line1": "33 Liberty Street",
      "line2": null,
      "name": "Ian Crease",
      "phone": "+16505046304",
      "postal_code": "10045",
      "state": "NY"
    },
    "memo": "Invoice 29582",
    "note": null,
    "payer": [
      {
        "contents": "Ian Crease"
      },
      {
        "contents": "33 Liberty Street"
      },
      {
        "contents": "New York, NY 10045"
      }
    ],
    "recipient_name": "Ian Crease",
    "return_address": {
      "city": "New York",
      "line1": "33 Liberty Street",
      "line2": null,
      "name": "Ian Crease",
      "phone": "+16505046304",
      "postal_code": "10045",
      "state": "NY"
    },
    "shipping_method": null,
    "signature": {
      "image_file_id": null,
      "text": "Ian Crease"
    },
    "tracking_updates": []
  },
  "routing_number": "101050001",
  "source_account_number_id": "account_number_v18nkfqm6afpsrvy82b2",
  "status": "mailed",
  "stop_payment_request": null,
  "submission": {
    "preview_file_id": null,
    "submitted_address": {
      "city": "NEW YORK",
      "line1": "33 LIBERTY STREET",
      "line2": null,
      "recipient_name": "IAN CREASE",
      "state": "NY",
      "zip": "10045"
    },
    "submitted_at": "2020-01-31T23:59:59Z",
    "tracking_number": null
  },
  "third_party": null,
  "type": "check_transfer",
  "valid_until_date": null
}
```
### Attributes
- `account_id` (string)
  The identifier of the Account from which funds will be transferred.

- `account_number` (string)
  The account number printed on the check.

- `amount` (integer)
  The transfer amount in USD cents.

- `approval` (dictionary, nullable)
  If your account requires approvals for transfers and the transfer was approved, this will contain details of the approval.

  - `approval.approved_at` (string)
    The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time at which the transfer was approved.

  - `approval.approved_by` (string, nullable)
    If the Transfer was approved by a user in the dashboard, the email address of that user.

- `approved_inbound_check_deposit_id` (string, nullable)
  If the Check Transfer was successfully deposited, this will contain the identifier of the Inbound Check Deposit object with details of the deposit.

- `balance_check` (enum, nullable)
  How the account's available balance should be checked.
  Cases:
  * `full` (The available balance of the account must be at least the amount of the check, and a Pending Transaction will be created for the full amount. This is the default behavior if `balance_check` is omitted.)
  * `none` (No balance check will performed when the check transfer is initiated. A zero-dollar Pending Transaction will be created. The balance will still be checked when the Inbound Check Deposit is created.)

- `cancellation` (dictionary, nullable)
  If your account requires approvals for transfers and the transfer was not approved, this will contain details of the cancellation.

  - `cancellation.canceled_at` (string)
    The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time at which the Transfer was canceled.

  - `cancellation.canceled_by` (string, nullable)
    If the Transfer was canceled by a user in the dashboard, the email address of that user.

- `check_number` (string)
  The check number printed on the check.

- `created_at` (string)
  The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time at which the transfer was created.

- `created_by` (dictionary, nullable)
  What object created the transfer, either via the API or the dashboard.

  - `created_by.api_key` (dictionary, nullable)
    If present, details about the API key that created the transfer.

      - `created_by.api_key.description` (string, nullable)
        The description set for the API key when it was created.

  - `created_by.category` (enum)
    The type of object that created this transfer.
    Cases:
    * `api_key` (An API key. Details will be under the `api_key` object.)
    * `oauth_application` (An OAuth application you connected to Increase. Details will be under the `oauth_application` object.)
    * `user` (A User in the Increase dashboard. Details will be under the `user` object.)

  - `created_by.oauth_application` (dictionary, nullable)
    If present, details about the OAuth Application that created the transfer.

      - `created_by.oauth_application.name` (string)
        The name of the OAuth Application.

  - `created_by.user` (dictionary, nullable)
    If present, details about the User that created the transfer.

      - `created_by.user.email` (string)
        The email address of the User.

- `currency` (enum)
  The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the check's currency.
  Cases:
  * `USD` (US Dollar (USD))

- `fulfillment_method` (enum)
  Whether Increase will print and mail the check or if you will do it yourself.
  Cases:
  * `physical_check` (Increase will print and mail a physical check.)
  * `third_party` (Increase will not print a check; you are responsible for printing and mailing a check with the provided account number, routing number, check number, and amount.)

- `id` (string)
  The Check transfer's identifier.

- `idempotency_key` (string, nullable)
  The idempotency key you chose for this object. This value is unique across Increase and is used to ensure that a request is only processed once. Learn more about [idempotency](https://increase.com/documentation/idempotency-keys).

- `mailing` (dictionary, nullable)
  If the check has been mailed by Increase, this will contain details of the shipment.

  - `mailing.mailed_at` (string)
    The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time at which the check was mailed.

- `pending_transaction_id` (string, nullable)
  The ID for the pending transaction representing the transfer. A pending transaction is created when the transfer [requires approval](https://increase.com/documentation/transfer-approvals#transfer-approvals) by someone else in your organization.

- `physical_check` (dictionary, nullable)
  Details relating to the physical check that Increase will print and mail. Will be present if and only if `fulfillment_method` is equal to `physical_check`.

  - `physical_check.attachment_file_id` (string, nullable)
    The ID of the file for the check attachment.

  - `physical_check.check_voucher_image_file_id` (string, nullable)
    The ID of the file for the check voucher image.

  - `physical_check.mailing_address` (dictionary)
    Details for where Increase will mail the check.

      - `physical_check.mailing_address.city` (string, nullable)
        The city of the check's destination.

      - `physical_check.mailing_address.line1` (string, nullable)
        The street address of the check's destination.

      - `physical_check.mailing_address.line2` (string, nullable)
        The second line of the address of the check's destination.

      - `physical_check.mailing_address.name` (string, nullable)
        The name component of the check's mailing address.

      - `physical_check.mailing_address.phone` (string, nullable)
        The phone number to be used in case of delivery issues at the check's mailing address. Only used for FedEx overnight shipping.

      - `physical_check.mailing_address.postal_code` (string, nullable)
        The postal code of the check's destination.

      - `physical_check.mailing_address.state` (string, nullable)
        The state of the check's destination.

  - `physical_check.memo` (string, nullable)
    The descriptor that will be printed on the memo field on the check.

  - `physical_check.note` (string, nullable)
    The descriptor that will be printed on the letter included with the check.

  - `physical_check.payer` (array of objects)
    The payer of the check. This will be printed on the top-left portion of the check and defaults to the return address if unspecified.

      - `physical_check.payer.contents` (string)
        The contents of the line.

  - `physical_check.recipient_name` (string)
    The name that will be printed on the check.

  - `physical_check.return_address` (dictionary, nullable)
    The return address to be printed on the check.

      - `physical_check.return_address.city` (string, nullable)
        The city of the check's destination.

      - `physical_check.return_address.line1` (string, nullable)
        The street address of the check's destination.

      - `physical_check.return_address.line2` (string, nullable)
        The second line of the address of the check's destination.

      - `physical_check.return_address.name` (string, nullable)
        The name component of the check's return address.

      - `physical_check.return_address.phone` (string, nullable)
        The shipper's phone number to be used in case of delivery issues. Only used for FedEx overnight shipping.

      - `physical_check.return_address.postal_code` (string, nullable)
        The postal code of the check's destination.

      - `physical_check.return_address.state` (string, nullable)
        The state of the check's destination.

  - `physical_check.shipping_method` (enum, nullable)
    The shipping method for the check.
    Cases:
    * `usps_first_class` (USPS First Class)
    * `fedex_overnight` (FedEx Overnight)

  - `physical_check.signature` (dictionary)
    The signature that will appear on the check.

      - `physical_check.signature.image_file_id` (string, nullable)
        The ID of a File containing a PNG of the signature.

      - `physical_check.signature.text` (string, nullable)
        The text that will appear as the signature on the check in cursive font.

  - `physical_check.tracking_updates` (array of objects)
    Tracking updates relating to the physical check's delivery.

      - `physical_check.tracking_updates.category` (enum)
        The type of tracking event.
        Cases:
        * `in_transit` (The check is in transit.)
        * `processed_for_delivery` (The check has been processed for delivery.)
        * `delivered` (The check has been delivered.)
        * `delivery_issue` (There is an issue preventing delivery. The delivery will be attempted again if possible. If the issue cannot be resolved, the check will be returned to sender.)
        * `returned_to_sender` (Delivery failed and the check was returned to sender.)

      - `physical_check.tracking_updates.created_at` (string)
        The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time at which the tracking event took place.

      - `physical_check.tracking_updates.postal_code` (string)
        The postal code where the event took place.

- `routing_number` (string)
  The routing number printed on the check.

- `source_account_number_id` (string, nullable)
  The identifier of the Account Number from which to send the transfer and print on the check.

- `status` (enum)
  The lifecycle status of the transfer.
  Cases:
  * `pending_approval` (The transfer is awaiting approval.)
  * `canceled` (The transfer has been canceled.)
  * `pending_submission` (The transfer is pending submission.)
  * `requires_attention` (The transfer requires attention from an Increase operator.)
  * `rejected` (The transfer has been rejected.)
  * `pending_mailing` (The check is queued for mailing.)
  * `mailed` (The check has been mailed.)
  * `deposited` (The check has been deposited.)
  * `stopped` (A stop-payment was requested for this check.)
  * `returned` (The transfer has been returned.)

- `stop_payment_request` (dictionary, nullable)
  After a stop-payment is requested on the check, this will contain supplemental details.

  - `stop_payment_request.reason` (enum)
    The reason why this transfer was stopped.
    Cases:
    * `mail_delivery_failed` (The check could not be delivered.)
    * `rejected_by_increase` (The check was canceled by an Increase operator who will provide details out-of-band.)
    * `not_authorized` (The check was not authorized.)
    * `valid_until_date_passed` (The check was stopped for `valid_until_date` being in the past.)
    * `unknown` (The check was stopped for another reason.)

  - `stop_payment_request.requested_at` (string)
    The time the stop-payment was requested.

  - `stop_payment_request.transfer_id` (string)
    The ID of the check transfer that was stopped.

  - `stop_payment_request.type` (string)
    A constant representing the object's type. For this resource it will always be `check_transfer_stop_payment_request`.

- `submission` (dictionary, nullable)
  After the transfer is submitted, this will contain supplemental details.

  - `submission.preview_file_id` (string, nullable)
    The ID of the file corresponding to an image of the check that was mailed, if available.

  - `submission.submitted_address` (dictionary)
    The address we submitted to the printer. This is what is physically printed on the check.

      - `submission.submitted_address.city` (string)
        The submitted address city.

      - `submission.submitted_address.line1` (string)
        The submitted address line 1.

      - `submission.submitted_address.line2` (string, nullable)
        The submitted address line 2.

      - `submission.submitted_address.recipient_name` (string)
        The submitted recipient name.

      - `submission.submitted_address.state` (string)
        The submitted address state.

      - `submission.submitted_address.zip` (string)
        The submitted address zip.

  - `submission.submitted_at` (string)
    When this check was submitted to our check printer.

  - `submission.tracking_number` (string, nullable)
    The tracking number for the check shipment.

- `third_party` (dictionary, nullable)
  Details relating to the custom fulfillment you will perform. Will be present if and only if `fulfillment_method` is equal to `third_party`.

  - `third_party.recipient_name` (string, nullable)
    The name that you will print on the check.

- `type` (string)
  A constant representing the object's type. For this resource it will always be `check_transfer`.

- `valid_until_date` (string, nullable)
  If set, the check will be valid on or before this date. After this date, the check transfer will be automatically stopped and deposits will not be accepted. For checks printed by Increase, this date is included on the check as its expiry.

## List Check Transfers
GET /check_transfers

### Example
```curl
curl \
  --url "${INCREASE_URL}/check_transfers?account_id=account_in71c4amph0vgo2qllky" \
  -H "Authorization: Bearer ${INCREASE_API_KEY}"
```

### Query Parameters
- `cursor` (string, optional)
  Return the page of entries after this one.

- `limit` (integer, optional)
  Limit the size of the list that is returned. The default (and maximum) is 100 objects.

- `account_id` (string, optional)
  Filter Check Transfers to those that originated from the specified Account.

- `idempotency_key` (string, optional)
  Filter records to the one with the specified `idempotency_key` you chose for that object. This value is unique across Increase and is used to ensure that a request is only processed once. Learn more about [idempotency](https://increase.com/documentation/idempotency-keys).

- `status.in` (array of enums, optional)
  Filter Check Transfers to those that have the specified status. For GET requests, this should be encoded as a comma-delimited string, such as `?in=one,two,three`.
  Cases:
  * `pending_approval` (The transfer is awaiting approval.)
  * `canceled` (The transfer has been canceled.)
  * `pending_submission` (The transfer is pending submission.)
  * `requires_attention` (The transfer requires attention from an Increase operator.)
  * `rejected` (The transfer has been rejected.)
  * `pending_mailing` (The check is queued for mailing.)
  * `mailed` (The check has been mailed.)
  * `deposited` (The check has been deposited.)
  * `stopped` (A stop-payment was requested for this check.)
  * `returned` (The transfer has been returned.)

- `created_at.after` (string, optional)
  Return results after this [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) timestamp.

- `created_at.before` (string, optional)
  Return results before this [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) timestamp.

- `created_at.on_or_after` (string, optional)
  Return results on or after this [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) timestamp.

- `created_at.on_or_before` (string, optional)
  Return results on or before this [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) timestamp.

### Returns a Check Transfer List object:
```json
{
  "data": [
    {
      "account_id": "account_in71c4amph0vgo2qllky",
      "account_number": "987654321",
      "amount": 1000,
      "approval": null,
      "approved_inbound_check_deposit_id": "inbound_check_deposit_zoshvqybq0cjjm31mra",
      "balance_check": null,
      "cancellation": null,
      "check_number": "123",
      "created_at": "2020-01-31T23:59:59Z",
      "created_by": {
        "category": "user",
        "user": {
          "email": "user@example.com"
        }
      },
      "currency": "USD",
      "fulfillment_method": "physical_check",
      "id": "check_transfer_30b43acfu9vw8fyc4f5",
      "idempotency_key": null,
      "mailing": {
        "mailed_at": "2020-01-31T23:59:59Z"
      },
      "pending_transaction_id": "pending_transaction_k1sfetcau2qbvjbzgju4",
      "physical_check": {
        "attachment_file_id": null,
        "check_voucher_image_file_id": null,
        "mailing_address": {
          "city": "New York",
          "line1": "33 Liberty Street",
          "line2": null,
          "name": "Ian Crease",
          "phone": "+16505046304",
          "postal_code": "10045",
          "state": "NY"
        },
        "memo": "Invoice 29582",
        "note": null,
        "payer": [
          {
            "contents": "Ian Crease"
          },
          {
            "contents": "33 Liberty Street"
          },
          {
            "contents": "New York, NY 10045"
          }
        ],
        "recipient_name": "Ian Crease",
        "return_address": {
          "city": "New York",
          "line1": "33 Liberty Street",
          "line2": null,
          "name": "Ian Crease",
          "phone": "+16505046304",
          "postal_code": "10045",
          "state": "NY"
        },
        "shipping_method": null,
        "signature": {
          "image_file_id": null,
          "text": "Ian Crease"
        },
        "tracking_updates": []
      },
      "routing_number": "101050001",
      "source_account_number_id": "account_number_v18nkfqm6afpsrvy82b2",
      "status": "mailed",
      "stop_payment_request": null,
      "submission": {
        "preview_file_id": null,
        "submitted_address": {
          "city": "NEW YORK",
          "line1": "33 LIBERTY STREET",
          "line2": null,
          "recipient_name": "IAN CREASE",
          "state": "NY",
          "zip": "10045"
        },
        "submitted_at": "2020-01-31T23:59:59Z",
        "tracking_number": null
      },
      "third_party": null,
      "type": "check_transfer",
      "valid_until_date": null
    }
  ],
  "next_cursor": "v57w5d"
}
```

## Create a Check Transfer
POST /check_transfers

### Example
```curl
curl -X "POST" \
  --url "${INCREASE_URL}/check_transfers" \
  -H "Authorization: Bearer ${INCREASE_API_KEY}" \
  -H "Content-Type: application/json" \
  -d $'{
    "account_id": "account_in71c4amph0vgo2qllky",
    "amount": 1000,
    "fulfillment_method": "physical_check",
    "physical_check": {
      "mailing_address": {
        "city": "New York",
        "line1": "33 Liberty Street",
        "name": "Ian Crease",
        "phone": "+16505046304",
        "postal_code": "10045",
        "state": "NY"
      },
      "memo": "Check payment",
      "recipient_name": "Ian Crease",
      "return_address": null,
      "signature": {
        "text": "Ian Crease"
      }
    },
    "source_account_number_id": "account_number_v18nkfqm6afpsrvy82b2",
    "valid_until_date": "2025-12-31"
  }'
```

### Body Parameters
- `account_id` (string, required)
  The identifier for the account that will send the transfer.

- `amount` (integer, required)
  The transfer amount in USD cents.

- `balance_check` (enum, optional)
  How the account's available balance should be checked. If omitted, the default behavior is `balance_check: full`.
  Cases:
  * `full` (The available balance of the account must be at least the amount of the check, and a Pending Transaction will be created for the full amount. This is the default behavior if `balance_check` is omitted.)
  * `none` (No balance check will performed when the check transfer is initiated. A zero-dollar Pending Transaction will be created. The balance will still be checked when the Inbound Check Deposit is created.)

- `check_number` (string, optional)
  The check number Increase should use for the check. This should not contain leading zeroes and must be unique across the `source_account_number`. If this is omitted, Increase will generate a check number for you.

- `fulfillment_method` (enum, required)
  Whether Increase will print and mail the check or if you will do it yourself.
  Cases:
  * `physical_check` (Increase will print and mail a physical check.)
  * `third_party` (Increase will not print a check; you are responsible for printing and mailing a check with the provided account number, routing number, check number, and amount.)

- `physical_check` (dictionary, optional)
  Details relating to the physical check that Increase will print and mail. This is required if `fulfillment_method` is equal to `physical_check`. It must not be included if any other `fulfillment_method` is provided.

  - `physical_check.attachment_file_id` (string, optional)
    The ID of a File to be attached to the check. This must have `purpose: check_attachment`. For details on pricing and restrictions, see https://increase.com/documentation/originating-checks#printing-checks .

  - `physical_check.check_voucher_image_file_id` (string, optional)
    The ID of a File to be used as the check voucher image. This must have `purpose: check_voucher_image`. For details on pricing and restrictions, see https://increase.com/documentation/originating-checks#printing-checks .

  - `physical_check.mailing_address` (dictionary, required)
    Details for where Increase will mail the check.

      - `physical_check.mailing_address.city` (string, required)
        The city component of the check's destination address.

      - `physical_check.mailing_address.line1` (string, required)
        The first line of the address component of the check's destination address.

      - `physical_check.mailing_address.line2` (string, optional)
        The second line of the address component of the check's destination address.

      - `physical_check.mailing_address.name` (string, optional)
        The name component of the check's destination address. Defaults to the provided `recipient_name` parameter if `name` is not provided.

      - `physical_check.mailing_address.phone` (string, optional)
        The phone number to associate with the check's destination address. The phone number is only used when `shipping_method` is `fedex_overnight` and will be supplied to FedEx to be used in case of delivery issues.

      - `physical_check.mailing_address.postal_code` (string, required)
        The postal code component of the check's destination address.

      - `physical_check.mailing_address.state` (string, required)
        The US state component of the check's destination address.

  - `physical_check.memo` (string, required)
    The descriptor that will be printed on the memo field on the check.

  - `physical_check.note` (string, optional)
    The descriptor that will be printed on the letter included with the check.

  - `physical_check.payer` (array of objects, optional)
    The payer of the check. This will be printed on the top-left portion of the check and defaults to the return address if unspecified. This should be an array of up to 4 elements, each of which represents a line of the payer.

      - `physical_check.payer.contents` (string, required)
        The contents of the line.

  - `physical_check.recipient_name` (string, required)
    The name that will be printed on the check in the 'To:' field.

  - `physical_check.return_address` (dictionary, optional)
    The return address to be printed on the check. If omitted this will default to an Increase-owned address that will mark checks as delivery failed and shred them.

      - `physical_check.return_address.city` (string, required)
        The city of the return address.

      - `physical_check.return_address.line1` (string, required)
        The first line of the return address.

      - `physical_check.return_address.line2` (string, optional)
        The second line of the return address.

      - `physical_check.return_address.name` (string, required)
        The name of the return address.

      - `physical_check.return_address.phone` (string, optional)
        The phone number to associate with the shipper. The phone number is only used when `shipping_method` is `fedex_overnight` and will be supplied to FedEx to be used in case of delivery issues.

      - `physical_check.return_address.postal_code` (string, required)
        The postal code of the return address.

      - `physical_check.return_address.state` (string, required)
        The US state of the return address.

  - `physical_check.shipping_method` (enum, optional)
    How to ship the check. For details on pricing, timing, and restrictions, see https://increase.com/documentation/originating-checks#printing-checks .
    Cases:
    * `usps_first_class` (USPS First Class)
    * `fedex_overnight` (FedEx Overnight)

  - `physical_check.signature` (dictionary, optional)
    The signature that will appear on the check. If not provided, the check will be printed with 'No Signature Required'. At most one of `text` and `image_file_id` may be provided.

      - `physical_check.signature.image_file_id` (string, optional)
        The ID of a File containing a PNG of the signature. This must have `purpose: check_signature` and be a 1320x120 pixel PNG.

      - `physical_check.signature.text` (string, optional)
        The text that will appear as the signature on the check in cursive font.

- `require_approval` (boolean, optional)
  Whether the transfer requires explicit approval via the dashboard or API.

- `source_account_number_id` (string, required)
  The identifier of the Account Number from which to send the transfer and print on the check.

- `third_party` (dictionary, optional)
  Details relating to the custom fulfillment you will perform. This is required if `fulfillment_method` is equal to `third_party`. It must not be included if any other `fulfillment_method` is provided.

  - `third_party.recipient_name` (string, optional)
    The pay-to name you will print on the check. If provided, this is used for [Positive Pay](/documentation/positive-pay). If this is omitted, Increase will be unable to validate the payer name when the check is deposited.

- `valid_until_date` (string, optional)
  If provided, the check will be valid on or before this date. After this date, the check transfer will be automatically stopped and deposits will not be accepted. For checks printed by Increase, this date is included on the check as its expiry.

## Retrieve a Check Transfer
GET /check_transfers/{check_transfer_id}

### Example
```curl
curl \
  --url "${INCREASE_URL}/check_transfers/check_transfer_30b43acfu9vw8fyc4f5" \
  -H "Authorization: Bearer ${INCREASE_API_KEY}"
```
### Path Parameters
- `check_transfer_id` (string, required)
  The identifier of the Check Transfer.

## Approve a Check Transfer
POST /check_transfers/{check_transfer_id}/approve

### Example
```curl
curl -X "POST" \
  --url "${INCREASE_URL}/check_transfers/check_transfer_30b43acfu9vw8fyc4f5/approve" \
  -H "Authorization: Bearer ${INCREASE_API_KEY}"
```
### Path Parameters
- `check_transfer_id` (string, required)
  The identifier of the Check Transfer to approve.

## Cancel a pending Check Transfer
POST /check_transfers/{check_transfer_id}/cancel
> Cancel a Check Transfer with the `pending_approval` status. See [Transfer Approvals](/documentation/transfer-approvals) for more information.
### Example
```curl
curl -X "POST" \
  --url "${INCREASE_URL}/check_transfers/check_transfer_30b43acfu9vw8fyc4f5/cancel" \
  -H "Authorization: Bearer ${INCREASE_API_KEY}"
```
### Path Parameters
- `check_transfer_id` (string, required)
  The identifier of the pending Check Transfer to cancel.

## Stop payment on a Check Transfer
POST /check_transfers/{check_transfer_id}/stop_payment

### Example
```curl
curl -X "POST" \
  --url "${INCREASE_URL}/check_transfers/check_transfer_30b43acfu9vw8fyc4f5/stop_payment" \
  -H "Authorization: Bearer ${INCREASE_API_KEY}" \
  -H "Content-Type: application/json" \
  -d $'{
    "reason": "mail_delivery_failed"
  }'
```
### Path Parameters
- `check_transfer_id` (string, required)
  The identifier of the Check Transfer.

### Body Parameters
- `reason` (enum, optional)
  The reason why this transfer should be stopped.
  Cases:
  * `mail_delivery_failed` (The check could not be delivered.)
  * `not_authorized` (The check was not authorized.)
  * `valid_until_date_passed` (The check was stopped for `valid_until_date` being in the past.)
  * `unknown` (The check was stopped for another reason.)

## Sandbox: Mail a Check Transfer
POST /simulations/check_transfers/{check_transfer_id}/mail
> Simulates the mailing of a [Check Transfer](#check-transfers), which happens periodically throughout the day in production but can be sped up in sandbox. This transfer must first have a `status` of `pending_approval` or `pending_submission`.
### Example
```curl
curl -X "POST" \
  --url "${INCREASE_URL}/simulations/check_transfers/check_transfer_30b43acfu9vw8fyc4f5/mail" \
  -H "Authorization: Bearer ${INCREASE_API_KEY}"
```
### Path Parameters
- `check_transfer_id` (string, required)
  The identifier of the Check Transfer you wish to mail.