# Set up a payment profile (https://developer.godaddy.com/en/docs/api-users/payment-profile)



Domain registration, renewal, and transfer charge the billing method saved on your GoDaddy account. The Domains API does not accept card numbers or payment objects in the request body — v3 registration quotes and purchases draw from the account's **payment profile**.

If no billing method is on file, quote and purchase calls fail before registration logic runs. The API returns `NO_PAYMENT_PROFILE` (HTTP `422`) until billing is configured. Go to [Handle errors](https://developer.godaddy.com/docs/api-users/errors) for the full error envelope and other billing-related error codes.

## Add a payment method

You can add a payment method in the account UI or open the same page from the CLI.

### Using the CLI

The beta `gddy` CLI opens your browser to the payment-methods page for the active environment:

```bash
gddy payments add
```

Only a **credit card** or **Good as Gold** balance can be used for domain purchases. For built-in CLI environments, the command opens:

| CLI environment                  | Account payment URL                                                                                        |
| -------------------------------- | ---------------------------------------------------------------------------------------------------------- |
| Production (`gddy env set prod`) | [account.godaddy.com/payment-methods/add-payment](https://account.godaddy.com/payment-methods/add-payment) |

### Using the account UI

1. Sign in at [account.godaddy.com/payment-methods/add-payment](https://account.godaddy.com/payment-methods/add-payment).
2. Click **Add Payment Method**.
3. Complete the **Billing Information** and **Payment Method** sections.
4. Click **Save**.

<Callout type="warn" title="Complete billing address and phone">
  Domain purchase also requires a complete registrant contact (phone and mailing address) on the account. If billing is set up but contact fields are missing, the API returns `MISSING_CONTACT` or validation errors on individual address fields. Update contacts at [account.godaddy.com/profile/contacts](https://account.godaddy.com/profile/contacts).
</Callout>

## Verify billing is ready

After adding a payment method, confirm the account can receive a registration quote. A successful quote returns a `quoteToken`; `NO_PAYMENT_PROFILE` means billing is still missing.

```bash
curl -s -X POST "https://api.godaddy.com/v3/domains/registration-quotes" \
  -H "Authorization: Bearer $GODADDY_PAT" \
  -H "Content-Type: application/json" \
  -d '{"domain": "example.com", "period": 1}'
```

<Callout type="info" title="Response">
  A `quoteToken` in the response confirms billing is configured. `NO_PAYMENT_PROFILE` means add a payment method first. `MISSING_CONTACT` means complete the registrant contact on the account before quoting or purchasing.
</Callout>

## Common errors

| Code                   | HTTP  | Likely cause                                                                       | What to do                                        |
| ---------------------- | ----- | ---------------------------------------------------------------------------------- | ------------------------------------------------- |
| `NO_PAYMENT_PROFILE`   | `422` | No payment method on the account.                                                  | Add a payment method (UI or `gddy payments add`). |
| `INVALID_PAYMENT_INFO` | `402` | Payment authorization failed at purchase time — no usable method or card declined. | Verify the card on file or add a new method.      |
| `ACCOUNT_NOT_FUNDED`   | `403` | Good as Gold balance is $0.00 with no fallback card.                               | Add funds or add a credit card.                   |
| `MISSING_CONTACT`      | `422` | Registrant phone or address missing from the account profile.                      | Complete contact info in the account UI.          |

<Callout type="info" title="Good as Gold vs credit card">
  Some accounts use a prepaid Good as Gold balance instead of a card. Registrations draw from the balance first. If the balance is $0 and no fallback card is on file, registration fails with a billing-related error. See [What is Good as Gold?](https://www.godaddy.com/help/what-is-good-as-gold-3359).
</Callout>

## Next steps

After billing is configured, continue with [Purchase a domain](https://developer.godaddy.com/docs/api-users/purchase-domains/register).
