Skip to main content

Credix

Credix lets you collect a payment when the buyer uses their Credix card to pay in monthly installments or in full.

Unlike SINPE, Credix is a card authorization: the charge is processed at the moment you confirm the payment intent, with no transfers or redirect to an external system. The intent moves straight to succeeded once the authorization is approved.

This payment method is available by request only and supports CRC and USD payments. The available installment terms and minimum amounts depend on your merchant configuration.

Enablement

Credix must be enabled for your account by the ONVO team, along with the per-term fee configuration. Request enablement before integrating.

Before you start

  • Request Credix enablement from the ONVO support team.
  • Configure webhooks and listen for payment-intent.succeeded.
  • Use CRC or USD as the payment intent currency.
  • Keep in mind the per-term minimum amounts defined for your merchant account.
  • Only Credix cards are accepted.

Available installments

When you confirm the intent, you set the number of installments in credixInstallmentMonths:

  • 1 — pay in full (a single charge with the Credix card, no financing).
  • 3, 6, 10, 12, 18, 24 — monthly installment plans.

The terms actually available depend on the fees your merchant account has configured in the dashboard and on the transaction amount. Each term can have a minimum amount, so not all of them are available for every amount.

Flow

  1. Create a payment intent for the exact amount to collect.
  2. Create a payment method with type: "credix" and the Credix card details.
  3. Confirm the intent with the paymentMethodId and credixInstallmentMonths.
  4. Credix authorizes the payment immediately: the intent moves to succeeded if approved or to failed if declined.
  5. Wait for the payment-intent.succeeded webhook before marking the payment as complete.

Create the payment intent

curl https://api.onvopay.com/v1/payment-intents \
-X POST \
-H "Authorization: Bearer $ONVO_SECRET_KEY" \
-H "Content-Type: application/json" \
-d '{
"amount": 500000,
"currency": "CRC",
"description": "Credix payment #1001"
}'

Create the payment method

Provide the Credix card details inside the credix object.

curl https://api.onvopay.com/v1/payment-methods \
-X POST \
-H "Authorization: Bearer $ONVO_SECRET_KEY" \
-H "Content-Type: application/json" \
-d '{
"type": "credix",
"credix": {
"number": "4111111111111111",
"expMonth": 12,
"expYear": 2026,
"cvv": "123",
"holderName": "Maria Rodriguez"
},
"billing": {
"name": "Maria Rodriguez",
"email": "maria@example.com"
}
}'

Confirm the intent

When confirming an intent with a Credix payment method, the credixInstallmentMonths field is required. Use 1 to pay in full or one of the installment terms your merchant account has configured in the dashboard.

curl https://api.onvopay.com/v1/payment-intents/$PAYMENT_INTENT_ID/confirm \
-X POST \
-H "Authorization: Bearer $ONVO_SECRET_KEY" \
-H "Content-Type: application/json" \
-d '{
"paymentMethodId": "cl502zv0d0127ebdp3zt27651",
"credixInstallmentMonths": 3
}'

The API validates the installments on confirmation:

  • If you omit credixInstallmentMonths, it responds with the payment_intents.credix_missing_installment_months error (400).
  • If you send a term that is not configured or enabled for your merchant account, or that does not meet that term's minimum amount, it responds with the payment_intents.credix_fee_not_configured error (400).

In that case, adjust the term (or the amount) according to the terms your merchant account has configured in the dashboard. Do not mark the payment as successful in your system until you receive payment-intent.succeeded.

Checkout and SDK

If you collect through Checkout or the SDK, you do not need to implement this API flow. When Credix is enabled for your merchant account and the amount meets the minimums, it shows up automatically as a payment option and the buyer selects the installment plan within the payment interface. In that case, installment selection is handled in Checkout and you do not have to send credixInstallmentMonths manually.

Credix is not available for subscriptions or for unsupported currencies.

Testing

In test mode, using onvo_test_ keys, the numbers defined in Credix test payment methods simulate different authorization scenarios. You do not need to use a real Credix card.

Use those numbers to simulate approved and declined authorizations.