In-App Payments SDK: Cookbook

Remove the Postal Code Requirement

Java (Android)

Remove the postal code requirement from the In-App Payments SDK card entry form.

Important

If the country code for the targeted location is for the United States US, Canada CA, or the United Kingdom GB, you must not remove the postal code requirement. Doing so results in all credit card transactions being declined.

The postal code requirement can be removed for all other countries.

Before you start Permalink Get a link to this section

  • You have integrated In-App Payments SDK into your iOS or Android application.

  • Your application can get the location country code of the seller who is taking the payment. This must be done by your server backend using the Locations API, because the payment is taken on the buyer's mobile device.

  • Your application is based in a country that does not require the postal code for processing payments.

Step 1: Get the location country of the seller Permalink Get a link to this section

Your mobile application needs to make a request to your server backend to get the correct location and location country. To be valid, the target location must have ACTIVE status, CREDIT_CARD_PROCESSING enabled, and the location.country field cannot be US, CA, or GB.

Follow the steps in the Search for Locations to find the appropriate location.

Step 2: Remove the postal code requirement Permalink Get a link to this section

In the CardEntry.startCardEntryActivity method, set the collectPostalCode parameter to false.

public class CheckoutActivity extends AppCompatActivity {

 @Override
 protected void onCreate(Bundle savedInstanceState) {
   super.onCreate(savedInstanceState);
   setContentView(R.layout.checkout_activity);

   //Find the add card button and set a click listener that starts the CardEntry activity
   findViewById(R.id.addCardButton).setOnClickListener(v -> {
     //Start the In-App Payments CardEntry activity
     CardEntry.startCardEntryActivity(CheckoutActivity.this, false);
   });
 }
}