Fincra Module reports errors for USD and other foreign currencies

Add product , check out with commerce module and make payment with Fincra Module in USD, fINCRA MODULE RETURNS error: 400

More details below:

Commerce Payment:

Unable to initialize payment with Fincra. Please try again or contact customer support.

Commerce Fincra:
Fincra checkout error: Client error: `POST https://api.fincra.com/checkout/payments` resulted in a `400 Bad Request` response: {"message":"bank_transfer is not available for USD","error":"Bad Request","statusCode":400}

Commerce Fincra:

Fincra Payload: {"reference":"899a8a62-039d-42ee-a605-08e1a169b5bb-1777824433","amount":105,"currency":"USD","customer":{"name":"xxxUser Site","email":"info@website.com"},"feeBearer":"business","redirectUrl":"https:\/\/website.com\/checkout\/626\/payment\/return","cancelUrl":"https:\/\/website.com\/checkout\/626\/payment\/cancel","paymentMethods":["card","bank_transfer"],"defaultPaymentMethod":"card"}

Comments

news4u created an issue. See original summary.

i-trokhanenko’s picture

The error message clearly indicates that the issue is coming directly from Fincra’s API: "bank_transfer is not available for USD".
In your payload, you're sending both payment methods: "paymentMethods":["card","bank_transfer"]

At this point, I’d recommend confirming this directly with Fincra support. According to their documentation, bank transfer should be supported for USD, so this might be:

  • an account-level restriction,
  • a configuration issue on their side,
  • or a recent change in their API behavior.

As a quick workaround, you can try removing "bank_transfer" from the paymentMethods array for USD transactions and keep only "card" - this should allow the payment initialization to go through.

But to properly resolve the root cause, it’s best to open a ticket with Fincra support and ask why bank_transfer is being rejected for USD in your case.

i-trokhanenko’s picture

Version: 1.0.5 » 1.0.x-dev
Priority: Major » Normal