x

Charge fails with INVALID_REQUEST_ERROR

On back we have such flow:

  • Get nonce from the frontend
  • Create customer
  • Create card for the customer and gotten nonce
CreateCustomerCardRequest cardRequest = new CreateCustomerCardRequest().cardNonce(cardNonce);
customersApi.createCustomerCard(customerId, cardRequest);
  • Make a charge with such request

 

Customer customer = customersApi.retrieveCustomer(clientDetails.getCustomerId()).getCustomer();
ChargeRequest chargeRequest = new ChargeRequest()
        // all set fields are required for charging via TransactionAPI
        .customerId(customer.getId())
        .customerCardId(customer.getCards().iterator().next().getId())
        .billingAddress(clientDetails.getAddress().convertToSquareAddress())
        .buyerEmailAddress(clientDetails.getEmail())
        .idempotencyKey(idempotencyKey)
        .amountMoney(preparePaymentAmount(clientAmount, request.getCurrency()))
        .note(shorten(clientDetails.getDescription()));

 

 

 The charge request fails with exception:

 

com.squareup.connect.ApiException: {"errors":[{"category":"INVALID_REQUEST_ERROR","code":"NOT_FOUND","detail":"Card on file `ccof:aVQ2nH9JALqLueJW3GB` for customer `TXSP1QJSFGTPV72CKAYR0SFXQR` not found.","field":"customer_card_id"}]}

 

 

 Help please. It seams to be a very common flow.

 

We make such calls not for our account but for merchant accounts that give us access by OAuth.

 

This code worked well before 2020-10-22 00:00 UTC.

391 Views
Message 1 of 1
Report
0 REPLIES 0