My application has only a US Square account (USD). I created a Sandbox seller account in Japan (JPY) and used the Payment Links API with the seller’s OAuth token.
I converted both the base price and app_fee_money to JPY, and the payment link was successfully created.
My questions:
- Does successful payment link creation mean the application fee can be collected successfully?
- Can I collect application fees from sellers in other countries using only my US Square account, provided I convert the fee to the seller’s local currency?
- If not, why does the API allow the payment link to be created?
No, a US (USD) developer account cannot collect app fees from a Japan (JPY) seller, even though the API lets you create the payment link.
The requirement for app fee collection is that the developer account’s country and currency must match the seller’s. A USD-based account cannot collect app_fee_money on JPY payments. The API accepting the request at creation time does not guarantee the fee will be collected at payment time, link creation validates structure, not the cross-account settlement eligibility.
To collect app fees from Japanese sellers, you’d need a separate Square developer account based in Japan (JPY), with real business presence for KYC. Cross-country platforms route payments through the matching country’s credentials.