Cannot make payment when currencyCode is set to JPY

I was unable to make a payment when I set the currencyCode to JPY. when I transitioned to Square’s iPad app, it instantly reverted to the app I was transitioning from without performing any action. How do I change the store settings to allow me to use JPY?

SampleCode

Failure

do {
            let money = try SCCMoney(amountCents: 1000, currencyCode: "JPY")

            // Create the request.
            let apiRequest =
                try SCCAPIRequest(
                        callbackURL: callbackURL,
                        amount: money,
                        userInfoString: nil,
                        locationID: nil,
                        notes: nil,
                        customerID: nil,
                        supportedTenderTypes: tenderTypes,
                        clearsDefaultFees: false,
                        returnsAutomaticallyAfterPayment: true,
                        disablesKeyedInCardEntry: false,
                        skipsReceipt: false
                )

            try SCCAPIConnection.perform(apiRequest)

        } catch let error as NSError {
            print(error.localizedDescription)
        }

Success

do {
            let money = try SCCMoney(amountCents: 1000, currencyCode: "USD")

            // Create the request.
            let apiRequest =
                try SCCAPIRequest(
                        callbackURL: callbackURL,
                        amount: money,
                        userInfoString: nil,
                        locationID: nil,
                        notes: nil,
                        customerID: nil,
                        supportedTenderTypes: tenderTypes,
                        clearsDefaultFees: false,
                        returnsAutomaticallyAfterPayment: true,
                        disablesKeyedInCardEntry: false,
                        skipsReceipt: false
                )

            try SCCAPIConnection.perform(apiRequest)

        } catch let error as NSError {
            print(error.localizedDescription)
        }

Currently with Point of Sale API you can only charge the currency that the account is set to charge with. So if you have a US account you will only be able to charge in USD. You will need a Japanese account if you want to charge in JPY. :slightly_smiling_face:

Thank you for your reply. Is it possible to switch an already created account to a Japanese account? Do I need to delete it and recreate it?

Currently you can switch the currency for an already created account. You will need to create a new account to charge in JPY. :slightly_smiling_face: