This guide will help you down the most common use case for charging a card via Payments API.
## 1. Create a webhook endpoint to accept merchant ids
As new merchants are enrolled for PaySimple card acceptance, you will need to collect and store merchant ids.
a. [Subscribe](🔗) to the [Merchant Activated for Payment Webhook](🔗).
b. Store `merchant_id
` and `merchant_key
` in your database.
If you miss a webhook subscription, or need to collect keys for existing merchants, call [get or list merchant endpoints](🔗).
## 2. Implement PMT to collect cards on your website
Include the [PMT Library](🔗) on your page and initialize using the `merchant_key
` identifier collected in step #1. PMT will collect card data, submit it to PaySimple, and return a one time token (nonce).
## 3. Submit a sale to PaySimple
On your server, create a request to the [Sale endpoint](🔗). Set the `PaySimple-Merchant-Id
` header to the id you collected in step #1. Set the `payment_method_token
` value to the nonce token returned in step #2. If you wish to store the card in the vault for future use, set `store_in_vault
` to `on_success
`.
If you do not want to make a sale immediately, but instead need to store the card for a future sale, call the [Vault from Nonce](🔗) endpoint.