Currencies and exchange rate
How Tranzak handles HTG and USD: automatic conversion for MonCash and NatCash, card conversion to USD, and the exchange rate endpoint.
Tranzak supports two currencies, HTG (gourdes) and USD. Which one the customer is charged in depends on the payment method.
What the customer pays
| Method | Shop or request currency | Customer is charged |
|---|---|---|
| MonCash | HTG or USD | Always in HTG. USD amounts are converted. |
| NatCash | HTG or USD | Always in HTG. USD amounts are converted. |
Hosted card (lakaypay_card) |
HTG or USD | The currency of the request. |
Card widget (card) |
HTG or USD | Charged in USD. HTG amounts are converted. |
MonCash and NatCash with USD
If you send "currency": "USD" with MonCash or NatCash, Tranzak converts the amount to HTG before creating the payment:
charged amount = amount in USD × exchange rate, rounded up to the next gourde
The payment is created, listed and notified in HTG. Fees and limits apply to the HTG amount.
Example: amount: 30, currency: "USD" at a rate of 130 gives 3,900 HTG to pay. The response shows what Tranzak did:
{
"success": true,
"transaction_id": "17843268616389",
"amount": "3900.00",
"currency": "HTG",
"conversion": {
"original_amount": 30,
"original_currency": "USD",
"exchange_rate": 130,
"charged_amount": 3900,
"charged_currency": "HTG"
},
"status": "processing",
"payment_url": "https://…"
}
The same object is kept in metadata.tranzak_conversion, and is returned by the read endpoints and the webhooks.
Important Always read
currencyandamountfrom the response, not from your request. A payment you created in USD is charged, stored and notified in HTG.
Card payments
Card payments are not converted the way MonCash and NatCash are. Stripe charges in USD, so an HTG amount is converted to USD at the Tranzak rate before the card is charged. The minimum for a card payment is 0.50 USD.
Read the current rate
GET /api/gateway/v1/exchange-rate returns the rate in HTG per 1 USD, an optional conversion of an amount, and the card minimum. See Exchange rate and health.
Tranzak can change the rate at any time. Show the customer the amount from your payment response, not a rate you stored earlier.