# create credit wallet

`POST https://api.suger.cloud/org/{orgId}/buyer/{buyerId}/wallet`

create a new credit wallet for the buyer.

## Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `orgId` | path | string | yes | Organization ID |
| `buyerId` | path | string | yes | Buyer ID |

## Request Body

Required.

Content-Type: `application/json` · Schema: `CreateCreditWalletParam`

**`CreateCreditWalletParam`** fields:

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `amount` | number | no |  |
| `expireTime` | string | no | nullable |
| `name` | string | no |  |
| `startTime` | string | no |  |

## Responses

### 200 — OK

Content-Type: `application/json` · Schema: `BillingWallet`

**`BillingWallet`** fields:

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `buyerID` | string | no |  |
| `creationTime` | string | no |  |
| `currency` | string | no |  |
| `expireTime` | string | no | nullable |
| `externalID` | string | no | The payment method id in payment provider, such as stripe payment method id. |
| `id` | string | no |  |
| `info` | BillingWalletInfo | no |  |
| `lastUpdateTime` | string | no |  |
| `name` | string | no |  |
| `organizationID` | string | no |  |
| `partner` | Partner | no |  |
| `startTime` | string | no |  |
| `status` | BillingWalletStatus | no |  |
| `totalAmount` | number | no |  |
| `type` | BillingWalletType | no |  |
| `usedAmount` | number | no |  |

**`BillingWalletInfo`** fields:

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `closeDate` | string | no | The close date of the wallet if applicable. |
| `stripePaymentMethod` | StripePaymentMethod | no |  |
| `stripeSetupIntentId` | string | no |  |

**`StripePaymentMethod`** fields:

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `bacs_debit` | StripePaymentMethodBACSDebit | no |  |
| `card` | StripePaymentMethodCard | no |  |
| `created` | integer | no | Time at which the object was created. Measured in seconds since the Unix epoch. |
| `id` | string | no | Unique identifier for the payment method on stripe. |
| `livemode` | boolean | no | Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode. |
| `object` | string | no | String representing the object’s type. Always has the value `payment_method`. |
| `sepa_debit` | StripePaymentMethodSEPADebit | no |  |
| `us_bank_account` | StripePaymentMethodUSBankAccount | no |  |

**`StripePaymentMethodBACSDebit`** fields:

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `fingerprint` | string | no | Uniquely identifies this particular bank account. You can use this attribute to check whether two bank accounts are the same. |
| `last4` | string | no | Last four digits of the bank account number. |
| `sort_code` | string | no | Sort code of the bank account. (e.g., `10-20-30`) |

**`StripePaymentMethodCard`** fields:

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `brand` | string | no | Card brand. |
| `country` | string | no | Two-letter ISO code representing the country of the card. You could use this attribute to get a sense of the international breakdown of cards you've collected. |
| `display_brand` | string | no | The brand to use when displaying the card, this accounts for customer's brand choice on dual-branded cards. Can be `american_express`, `cartes_bancaires`, `diners_club`, `discover`, `eftpos_australia`, `interac`, `jcb`, `mastercard`, `union_pay`, `visa`, or `other` and may contain more values in the future. |
| `exp_month` | integer | no | Two-digit number representing the card's expiration month. |
| `exp_year` | integer | no | Four-digit number representing the card's expiration year. |
| `fingerprint` | string | no | Uniquely identifies this particular card number. You can use this attribute to check whether two customers who’ve signed up with you are using the same card number, for example. For payment methods that tokenize card information (Apple Pay, Google Pay), the tokenized number might be provided instead of the underlying card number. |
| `funding` | string | no | Card funding type. Can be `credit`, `debit`, `prepaid`, or `unknown`. |
| `last4` | string | no | The last four digits of the card. |

**`StripePaymentMethodSEPADebit`** fields:

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `bank_code` | string | no | Bank code of bank associated with the bank account. |
| `branch_code` | string | no | Branch code of bank associated with the bank account. |
| `country` | string | no | Two-letter ISO code representing the country the bank account is located in. |
| `fingerprint` | string | no | Uniquely identifies this particular bank account. You can use this attribute to check whether two bank accounts are the same. |
| `last4` | string | no | Last four characters of the IBAN. |

**`StripePaymentMethodUSBankAccount`** fields:

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `account_holder_type` | string | no | Account holder type: individual or company. |
| `account_type` | string | no | Account type: checkings or savings. Defaults to checking if omitted. |
| `bank_name` | string | no | The name of the bank. |
| `fingerprint` | string | no | Uniquely identifies this particular bank account. You can use this attribute to check whether two bank accounts are the same. |
| `last4` | string | no | Last four digits of the bank account number. |
| `routing_number` | string | no | Routing number of the bank account. |

### 400 — Bad request error

Content-Type: `application/json`

### 500 — Internal server error

Content-Type: `application/json`

---

Interactive API reference: https://doc.suger.io/api/
