---
title: "Start A Purchase"
method: POST
path: "/devices/{code}/payment/purchase"
tags: ["Device"]
---

# Start A Purchase

`POST /devices/{code}/payment/purchase`

This operation requires the provided API key to have Processing permission set to 'PositiveTransaction' or higher.

## Path parameters

- `code` string, required

## Request body

- PaymentRequest2
  - `currency` string, required — The currency code for the transaction amount, such as CAD or USD.
  - `transactionAmount` number, required — The amount to be processed, specified in the currency defined by the currency parameter.
  - `invoiceNumber` string — An identifier for an invoice. If an existing invoiceNumber is provided, Helcim will relate this transaction to that invoice. If invoiceNumber provided does not exist, Helcim will create an invoice and link the provided invoiceNumber. If not provided, Helcim will create an invoice.
  - `customerCode` string — An identifier for a customer. If existing customerCode is provided, Helcim will attach that customer. If customerCode provided does not exist, Helcim will create a customer with the provided customerCode. If not provided, Helcim will create a customer.

## Response `202`

Accepted

## Other responses

- `403` — Unauthorized
- `404` — Device Not Found
- `409` — Device Not Listening
- `500` — Internal server error

---

[API](https://skmtc.net/helcim/apis/the-helcim-api.md) · [All operations](https://skmtc.net/helcim/apis/the-helcim-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/helcim/the-helcim-api/versions/345052ca6578/schema)
