---
title: "Create Affiliate Settlement"
method: POST
path: "/programs/{programCode}/affiliate/settlements"
tags: ["Affiliate"]
---

# Create Affiliate Settlement

`POST /programs/{programCode}/affiliate/settlements`

Creates a new affiliate settlement for the specified program.

## Path parameters

- `programCode` string, required

## Headers

- `X-GD-RequestId` string, required

## Request body

- CreateAffiliateSettlementRequest — Represents a request to create an affiliate settlement. Contains affiliate identification, settlement rail, frequency, bank details, description, and encrypted data. Used to initiate the creation of a settlement for an affiliate, including secure transmission of sensitive banking information.
  - `affiliateIdentifier` string, nullable — The unique identifier for the affiliate for whom the settlement is being created.
  - `settlementRail` string, nullable — The settlement rail to be used for the affiliate settlement (e.g., ACH, Wire).
  - `frequency` string, nullable — The frequency of the settlement (e.g., daily, weekly, monthly).
  - `bankName` string, nullable — The name of the bank associated with the affiliate settlement.
  - `description` string, nullable — An optional description for the affiliate settlement.
  - `encryptedData` EncryptedData — Represents a container for encrypted data used in secure data transfer operations. Contains the encrypted payload and associated cryptographic metadata, including encryption version, ephemeral public key, and public key hash. Used to securely transmit sensitive information such as user data, ensuring confidentiality and integrity during transport.
    - `version` string, nullable — The version of the encryption algorithm used to encrypt the data (e.g., "v1", "v2").
    - `ephemeralPublicKey` string, nullable — The ephemeral public key used in the encryption process, typically for key exchange or session establishment.
    - `publicKeyHash` string, nullable — The hash of the public key used to verify the integrity and authenticity of the encryption key.
    - `data` string, nullable — The encrypted data payload, typically base64-encoded, containing the sensitive information.

## Response `200`

OK

- CreateAffiliateSettlementResponse — Represents the response for creating an affiliate settlement. Contains the unique identifier for the created affiliate settlement. Inherits standard response metadata and details from Gd.Bos.DataTransfer.Response.ResponseBase.
  - `affiliateSettlementIdentifier` string, nullable — Gets or sets the unique identifier for the created affiliate settlement.
  - `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)
