---
title: "Generates a new barcode for a given eCash partner (retailer)."
method: POST
path: "/programs/{programCode}/accounts/{accountIdentifier}/barcodes"
tags: ["ECash"]
---

# Generates a new barcode for a given eCash partner (retailer).

`POST /programs/{programCode}/accounts/{accountIdentifier}/barcodes`

Generates a new barcode for an eCash Partner (retailer). Barcodes are retailer specific and can only be used once. Expiration date and time will be returned in the response.

## Path parameters

- `programCode` string, required
- `accountIdentifier` string, required

## Headers

- `X-GD-RequestId` string, required

## Request body

- GenerateBarcodeRequest — Generate Barcode Request – Represents the data required to generate a new barcode for an eCash partner (retailer). Used to initiate the creation of a barcode for cash transactions, specifying account, partner, amount, location, and recipient details.
  - `partnerId` string, nullable — The unique identifier of the eCash partner (retailer) for which the barcode is generated.
  - `amount` number, double, nullable — The transaction amount to be associated with the barcode, if applicable.
  - `zipCode` string, nullable — The ZIP code relevant to the transaction or location.
  - `transactionType` 'None' | 'Send' | 'Load' — The type of eCash transaction (e.g., "send", "load").
  - `recipient` Recipient — Recipient – Represents the recipient of an eCash transaction. Used to provide recipient details such as phone number, first name, and last name for barcode generation and eCash operations.
    - `phonenumber` string, nullable — The recipient's phone number, used for notification or identification.
    - `firstname` string, nullable — The recipient's first name.
    - `lastname` string, nullable — The recipient's last name.
  - `memo` string, nullable — An optional memo or note to include with the barcode transaction.
  - `geoLocation` GeoLocation — GeoLocation – Represents a geographic location using latitude and longitude coordinates. Used to specify the physical location for eCash partner searches, barcode generation, and other location-based operations.
    - `latitude` number, double — The latitude component of the geographic location (in decimal degrees).
    - `longitude` number, double — The longitude component of the geographic location (in decimal degrees).

## Response `201`

Created

- GenerateBarcodeResponse — Generate Barcode Response – Contains the details of the generated barcode.
  - `eCash` Barcode — Barcode – Represents a barcode generated for eCash transactions. Used to provide details about the barcode status, value, expiration, and associated transaction amounts in barcode-related responses.
    - `barcodeStatus` 'None' | 'New' | 'Pending' | 'Consumed' | 'Voided' | 'Expired' | 'Cancelled' | 'Declined' — The current status of the barcode (e.g., New, Pending, Consumed, Voided, Expired, Cancelled, Declined). See Gd.Bos.DataTransfer.Barcode.BarcodeStatus.
    - `barcodeNumber` string, nullable — The encoded barcode number, typically used for scanning at a retailer.
    - `barcodeHumanReadable` string, nullable — The human-readable representation of the barcode, suitable for display or manual entry.
    - `barcodeExpirationDateTime` string, date-time — The expiration date and time of the barcode (UTC). After this date, the barcode is no longer valid for transactions.
    - `faceFee` number, double — The face fee (in USD) associated with using this barcode, if applicable.
    - `amount` number, double, nullable — The transaction amount associated with the barcode, if applicable.
  - `responseDetails` ResponseDetail[], nullable — Required: A list of response details providing status codes, descriptions, and additional information about the result of the operation.
    - `code` integer — The primary status or error code for the response (e.g., 200 for success, 400 for validation error).
    - `subCode` integer, nullable — An optional subcode providing more granular detail about the response or error.
    - `description` string, nullable — A human-readable description of the response, error, or status.
    - `url` string, nullable — A URL linking to documentation or a web page with more information about the response code.

## Other responses

- `401` — Unauthorized
- `403` — Forbidden
- `500` — Internal Server Error
- `503` — Service Unavailable

---

[API](https://skmtc.net/greendot/apis/baas-apis.md) · [All operations](https://skmtc.net/greendot/apis/baas-apis/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/greendot/baas-apis/revisions/666553766b78/schema)
