> ## Documentation Index
> Fetch the complete documentation index at: https://rain-sandbox-trial.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Ship Cards in Bulk

> Bulk shipping allows you to group multiple cards into a single shipment for efficient delivery. This reduces shipping costs and simplifies distribution, especially for organizations managing large numbers of cards.

Even in bulk shipments, each card should be:

* Individually packaged.
* Labeled with its recipient mailing address.
* Ready for easy redistribution by the bulk shipment recipient.

<Warning>
  **Shipping behavior:**

  Cards grouped in a bulk shipment must be individually addressed and packaged, so they can be forwarded or handed out without repackaging.
</Warning>

Follow the steps below to set up and manage bulk card shipments.

<Steps>
  <Step title="Create a shipping group">
    To initiate a bulk shipment, first create a shipping group using the [Create a bulk shipping group](/reference/shipping/create-a-bulk-shipping-group) endpoint.

    This creates a unique `bulkShippingGroupId` that you will reference when creating cards to include in this shipment. Below, you can find an example request.

    <CodeGroup>
      ```bash bash theme={null}
      curl --request POST \
           --url https://api-dev.rain.xyz/v1/issuing/shipping-groups \
           --header 'accept: application/json' \
           --header 'content-type: application/json' \
           --data '
      {
        "address": {
          "line1": "123 Main Street",
          "city": "Springfield",
          "region": "Arizona",
          "postalCode": "123456",
          "countryCode": "US"
        },
        "recipientFirstName": "First",
        "recipientLastName": "Last",
        "recipientPhoneCountryCode": "1",
        "recipientPhoneNumber": "5555555555"
      }
      '
      ```
    </CodeGroup>

    The response returns the group, including its `id`. Use that value as the
    `bulkShippingGroupId` when you create cards:

    <CodeGroup>
      ```json theme={null}
      {
        "id": "3f9a1c2e-7b4d-4e5f-9a01-23456789abcd"
      }
      ```
    </CodeGroup>

    To check an address before creating the group, call
    [`POST /issuing/shipping-groups/validate-address`](/reference/shipping/validate-an-address-for-shipping)
    with the address; the response returns `isValid` and a confidence level.
  </Step>

  <Step title="Create cards with the shipping group ID">
    When creating each card, include the `bulkShippingGroupId` in the request payload. All cards with the same ID will be grouped for shipment.

    ### Example workflow

    1. Create a shipping group → Receive its `id`
    2. Create Card A with `bulkShippingGroupId` set to that `id`
    3. Create Card B with the same `bulkShippingGroupId`

    Both cards will be shipped together in one bulk package.

    <Warning>
      **Include shipping id when creating the card:**

      You must include the `bulkShippingGroupId` at the time of card creation. It cannot be added or changed later.
    </Warning>
  </Step>

  <Step title="Understand grouping rules and cutoff times">
    Cards are grouped into the same shipment only if they:

    * Share the same `bulkShippingGroupId`.
    * Are created **before 12:00 PM EST**, Monday through Friday.

    ### Grouping timing example

    | Card | Group ID | Created Time | Shipping Batch            |
    | ---- | -------- | ------------ | ------------------------- |
    | A    | XXX      | 11:30 AM EST | Batch 1 (together)        |
    | B    | XXX      | 11:55 AM EST | Batch 1 (together)        |
    | C    | XXX      | 12:15 PM EST | Batch 2 (separate)        |
    | D    | YYY      | 11:45 AM EST | Separate from A, B, and C |

    <Info>
      **Plan card creation time:**

      To ensure cards are grouped correctly, plan card creation to complete before the 12:00 PM EST cutoff.
    </Info>
  </Step>
</Steps>

## Common questions

### How many cards can I include in a bulk shipping group?

A minimum of two cards is required for a shipment to qualify as a bulk group.

### Can I change the shipping group after creating a card?

No. The `bulkShippingGroupId` must be set at the time of card creation and cannot be updated later.

### What happens if I forget to set up a shipping group?

Cards without a `bulkShippingGroupId` will be shipped individually, not as part of a bulk group.

### How are the cards packaged?

Each card is:

* Individually sealed
* Labeled with its specific recipient mailing address
* Easy to redistribute by the bulk shipment recipient

### Where can I find the shipping group ID?

The `bulkShippingGroupId` is returned in the response when you create a shipping group using the [Create a bulk shipping group](/reference/shipping/create-a-bulk-shipping-group) endpoint.
