Testing

Important
Your integration may be impacted by upcoming certificate changes. Visit our best practices guide to learn more.

Use the test values below to test functionality in the Braintree sandbox.

Note
The sandbox is an entirely separate environment from your production account. Nothing created in the sandbox (e.g. processing options, recurring billing settings) will transfer to production. Your login information, merchant ID, and API keys will also be different. See Try It Out for more details.

Transaction amountsAnchorIcon

When working with transactions, you can pass specific amounts to simulate different processor responses. Each test amount below will trigger the associated authorization response, regardless of the processing currency.

AmountAuthorization ResponseSettlement Response
0.01 - 1999.99AuthorizedSettled
2000.00 - 2999.99Processor Declined with a processor response equal to the amount n/a
3000.00 - 3000.99Failed with a 3000 processor responsen/a
3001.00 - 4000.99AuthorizedSettled
4001.00 - 4001.99AuthorizedSettlement Declined on certain transaction types with a processor response equal to the amount; Settled on all others
4002.00 - 4002.99AuthorizedSettlement Pending on PayPal transactions with a processor response equal to the amount; Settled on all others
4003.00 - 5000.99AuthorizedSettlement Declined on certain transaction types with a processor response equal to the amount; Settled on all others
5001.00Gateway Rejected with a reason of Application Incompleten/a
5001.01Processor Declined on PayPal transactions in the Mocked PayPal flow with a 2038 processor response. Authorized on all others n/a on PayPal transactions; Settled on all others
5001.02AuthorizedProcessor Unavailable on certain transaction types with a processor response of 3000; Settled on all others
5002.00 and upAuthorizedSettled

Credit card numbersAnchorIcon

The sandbox environment only accepts specific test credit card numbers. Use the credit card values below to trigger different responses from the gateway.

Note

When testing card verifications and transactions, keep in mind:

  • Transaction success is determined by the test amount you use. For example, when testing decline scenarios.
  • Verification success is determined by the test card number you use. For example, when testing Vault and recurring billing scenarios.

Learn more about the difference between transactions and verifications.

Valid card numbersAnchorIcon

These credit card numbers will not trigger specific credit card errors.

Note
Using these numbers does not necessarily mean that a transaction will be successful in the sandbox. Other values that impact transaction success include:
Test ValueCard Type
`378282246310005`American Express
`371449635398431`American Express
`36259600000004`Diners Club*
`6011000991300009`Discover
`3530111333300000`JCB
`6304000000000000`Maestro
`5555555555554444`Mastercard
`2223000048400011`Mastercard
`4111111111111111`Visa
`4005519200000004`Visa
`4009348888881881`Visa
`4012000033330026`Visa
`4012000077777777`Visa
`4012888888881881`Visa
`4217651111111119`Visa
`4500600000000061`Visa
`6243030000000001`UnionPay
`6221261111117766`UnionPay
`6223164991230014`UnionPay

*Diners Club cards are processed as Discover cards.

Card numbers for unsuccessful verificationAnchorIcon

The following credit card numbers will simulate an unsuccessful card verification response.

Note
Verifying a card is different than creating a transaction. To trigger an unsuccessful transaction, adjust the amount of the transaction.
Test ValueCard TypeVerification Response
`4000111111111115`Visaprocessor declined
`5105105105105100`Mastercardprocessor declined
`378734493671000`American Expressprocessor declined
`6011000990139424`Discoverprocessor declined
`38520000009814`Diners Club*processor declined
`3566002020360505`JCBfailed (3000)

*Diners Club cards are processed as Discover cards.

Card numbers with type indicatorsAnchorIcon

The following card numbers can be used to simulate various types of cards, such as prepaid, commercial, or healthcare. Using any of the card numbers below will force the corresponding card type indicator to return "Yes" and the others to return "No" or "Unknown":

Test ValueCard Type Indicator Response
`4500600000000061`prepaid = "Yes"
`4012004338508385`prepaid = "Yes", debit = "Yes"
`4009040000000009`commercial = "Yes"
`4005519200000004`Durbin regulated = "Yes"
`4012000033330026`healthcare = "Yes"
`4012000033330125`debit = "Yes"
`4012000033330224`payroll = "Yes"
`4012000033330422`all values = "No"
`4012000033330323`all values = "Unknown"

Card numbers with other informationAnchorIcon

Test ValueCard TypeCard Information
`4012000033330620`Visacountry of issuance = "USA"
`4012000033330729`Visacountry of issuance = "CAN"
`4023490000000008`Visacountry of issuance = "IRL"
`4444333322221111`Visacountry of issuance = "GBR"
`5555444433331111`Mastercardcountry of issuance = "GBR"
`374512431123241`Amexcountry of issuance = "GBR"
`375529658790105`Amexcountry of issuance = "IRL"
`5101108206957373`Mastercardcountry of issuance = "IRL"
`4012000033330521`Visaissuing bank ="NETWORK ONLY"

Payment method noncesAnchorIcon

In order to simplify testing your server side code, we provide static payment_method_nonce values for you to use in sandbox. Credit card nonces come with a billing postal code already filled in for AVS testing purposes. If you do not want to include a billing address in your testing or if you'd like to use a specific billing address ID instead, use fake-valid-no-billing-address-nonce.

Collect device data from the client and include the device_data_from_the_client in the transaction.

  1. Ruby
result = gateway.transaction.sale({
    amount: '10.00',
    payment_method_nonce: 'fake-valid-nonce',
    device_data: device_data_from_the_client,
    options: {
        submit_for_settlement: true
    }
});

Nonces representing cardsAnchorIcon

You can use any of the nonces in this table to simulate a card transaction or trigger a successful card verification response.
Note

When testing card verifications and transactions, keep in mind:

  • Transaction success is determined by the test amount you use
  • Verification success is determined by the test nonce you use
NonceDescription
`fake-valid-nonce`A valid nonce that can be used to create a transaction
`fake-valid-no-billing-address-nonce`A valid nonce containing no billing address information
`fake-valid-visa-nonce`A nonce representing a valid Visa card request
`fake-valid-amex-nonce`A nonce representing a valid American Express card request
`fake-valid-mastercard-nonce`A nonce representing a valid Mastercard request
`fake-valid-discover-nonce`A nonce representing a valid Discover card request
`fake-valid-jcb-nonce`A nonce representing a valid JCB card request
`fake-valid-maestro-nonce`A nonce representing a valid Maestro card request
`fake-valid-dinersclub-nonce`A nonce representing a valid Diners Club card request
`fake-valid-prepaid-nonce`A nonce representing a valid prepaid card request
`fake-valid-commercial-nonce`A nonce representing a valid commercial card request
`fake-valid-durbin-regulated-nonce`A nonce representing a valid Durbin regulated card request
`fake-valid-healthcare-nonce`A nonce representing a valid healthcare card request
`fake-valid-debit-nonce`A nonce representing a valid debit card request
`fake-valid-payroll-nonce`A nonce representing a valid payroll card request
`fake-valid-no-indicators-nonce`A nonce representing a request for a valid card with no indicators
`fake-valid-unknown-indicators-nonce`A nonce representing a request for a valid card with unknown indicators
`fake-valid-country-of-issuance-usa-nonce`A nonce representing a request for a valid card issued in the USA
`fake-valid-country-of-issuance-cad-nonce`A nonce representing a request for a valid card issued in Canada
`fake-valid-issuing-bank-network-only-nonce` A nonce representing a request for a valid card with the message 'NETWORK ONLY' from the issuing bank

Nonces representing alternative payment methodsAnchorIcon

NonceDescription
`fake-android-pay-nonce`A nonce representing a Google Pay request
`fake-android-pay-visa-nonce`A nonce representing a Google Pay Visa request
`fake-android-pay-visa-debit-nonce`A nonce representing a Google Pay Visa debit request
`fake-android-pay-mastercard-nonce`A nonce representing a Google Pay Mastercard request
`fake-android-pay-amex-nonce`A nonce representing a Google Pay American Express request
`fake-android-pay-discover-nonce`A nonce representing a Google Pay Discover request
`fake-google-pay-paypal-nonce`A nonce representing a PayPal via Google Pay request
`fake-apple-pay-amex-nonce`A nonce representing an Apple Pay request for an American Express card number
`fake-apple-pay-visa-nonce`A nonce representing an Apple Pay request for a Visa card number
`fake-apple-pay-visa-debit-nonce`A nonce representing an Apple Pay request for a Visa debit card number
`fake-apple-pay-mastercard-nonce`A nonce representing an Apple Pay request for a Mastercard card number
`fake-apple-pay-discover-nonce`A nonce representing an Apple Pay request for a Discover card number
`fake-local-payment-method-nonce`A nonce representing a Local Payment Method
`fake-paypal-one-time-nonce` Only valid when using the mocked PayPal testing strategy. A nonce representing an unvaulted PayPal account that a customer has authorized for one-time payments via the Checkout flow. Learn more about PayPal testing options.
`fake-paypal-billing-agreement-nonce` Only valid when using the mocked PayPal testing strategy. A nonce representing a PayPal billing agreement that a customer has authorized via the Vault flow. Learn more about PayPal testing options.
`fake-sepa-direct-debit-nonce`A nonce representing a SEPA direct debit account
`fake-visa-checkout-amex-nonce`A nonce representing an American Express card from Visa Checkout
`fake-visa-checkout-discover-nonce`A nonce representing a Discover card from Visa Checkout
`fake-visa-checkout-mastercard-nonce`A nonce representing a Mastercard card from Visa Checkout
`fake-visa-checkout-visa-nonce`A nonce representing a Visa card from Visa Checkout
`fake-masterpass-amex-nonce`A nonce representing an American Express card from Masterpass
`fake-masterpass-discover-nonce`A nonce representing a Discover card from Masterpass
`fake-masterpass-mastercard-nonce`A nonce representing a Mastercard card from Masterpass
`fake-masterpass-visa-nonce`A nonce representing a Visa card from Masterpass
`fake-venmo-account-nonce`A nonce representing a Venmo Account
`tokensam_fake_visa`A nonce representing a Visa card from Samsung Pay
`tokensam_fake_mastercard`A nonce representing a Mastercard card from Samsung Pay
`tokensam_fake_american_express`A nonce representing an American Express card from Samsung Pay

Nonces for testing card verificationAnchorIcon

Processor rejected noncesAnchorIcon

The following payment method nonces represent credit cards that simulate an unsuccessful card verification response with a status of processor_declined.

NonceDescription
`fake-processor-declined-visa-nonce`A nonce representing a request for a Visa card that was declined by the processor
`fake-processor-declined-mastercard-nonce`A nonce representing a request for a Mastercard that was declined by the processor
`fake-processor-declined-amex-nonce` A nonce representing a request for a American Express card that was declined by the processor
`fake-processor-declined-discover-nonce`A nonce representing a request for a Discover card that was declined by the processor
`fake-processor-declined-dinersclub-nonce` A nonce representing a request for a Diners Club card that was declined by the processor
`fake-processor-failure-jcb-nonce`A nonce representing a request for a JCB card that was declined by the processor

Gateway rejected noncesAnchorIcon

The following payment method nonces represent credit cards that simulate an unsuccessful card verification response with a status of gateway_rejected.

NonceDescription
`fake-luhn-invalid-nonce`A nonce representing a Luhn-invalid card
`fake-consumed-nonce`A nonce that has already been consumed

CVV-only noncesAnchorIcon

The following payment method nonces represent credit card CVV or CID values collected on the client side to verify cards already stored in your Vault. The test nonce you use determines which cvv_response_code you receive in the sandbox.

NonceDescription
`fake-three-digit-cvv-only-nonce`A nonce representing a 3-digit CVV with a CVV response of `M` (matches)
`fake-three-digit-cvv-only-n-response-nonce`A nonce representing a 3-digit CVV with a CVV response of `N` (does not match)
`fake-three-digit-cvv-only-u-response-nonce`A nonce representing a 3-digit CVV with a CVV response of `U` (not verified)
`fake-three-digit-cvv-only-s-response-nonce` A nonce representing a 3-digit CVV with a CVV response of `S` (issuer does not participate)
`fake-four-digit-cvv-only-nonce`A nonce representing a 4-digit CID with a CVV response of `M` (matches)
`fake-four-digit-cvv-only-n-response-nonce`A nonce representing a 4-digit CID with a CVV response of `N` (does not match)
`fake-four-digit-cvv-only-u-response-nonce`A nonce representing a 4-digit CID with a CVV response of `U` (not verified)
`fake-four-digit-cvv-only-s-response-nonce` A nonce representing a 4-digit CID with a CVV response of `S` (issuer does not participate)

For details on generating CVV-only nonces in your client-side integration, see the client SDK references:

3D Secure nonces and authentication IDsAnchorIcon

You can use these nonces or authentication IDs to test your integration under various 3D Secure scenarios for Visa cards. Authentication IDs are an alternate way of specifying a 3D Secure authentication to use for a transaction if no authentication is attached to the payment method. See the 3D Secure guide for more information on different status codes.

Note
The following nonces are only for testing Visa cards. Liability shift status is generally agnostic to the card type and other card brands will work similarly.
NonceAuthentication IDDescriptionStatus
`fake-three-d-secure-visa-full-authentication-nonce``fake-three-d-secure-visa-full-authentication-id` A nonce or `three_d_secure_authentication_id` representing a full 3D Secure authentication `"authenticate_successful"`
`fake-three-d-secure-visa-lookup-timeout-nonce``fake-three-d-secure-visa-lookup-timeout-id` A nonce or `three_d_secure_authentication_id` representing a 3D secure error where the cardholder enrollment lookup request timed out `"lookup_error"`
`fake-three-d-secure-visa-failed-authentication-nonce``fake-three-d-secure-visa-failed-authentication-id` A nonce or `three_d_secure_authentication_id` representing a 3D Secure scenario where the cardholder was enrolled but failed authentication `"authenticate_failed"`
`fake-three-d-secure-visa-attempts-non-participating-nonce``fake-three-d-secure-visa-attempts-non-participating-id` A nonce or `three_d_secure_authentication_id` representing a 3D Secure authentication through the card brand's Attempts server because the issuer's authentication server is unavailable `"authenticate_attempt_successful"`
`fake-three-d-secure-visa-not-enrolled-nonce``fake-three-d-secure-visa-not-enrolled-id` A nonce or `three_d_secure_authentication_id` representing a 3D Secure authentication where the cardholder was not enrolled `"lookup_not_enrolled"`
`fake-three-d-secure-visa-unavailable-nonce``fake-three-d-secure-visa-unavailable-id` A nonce or `three_d_secure_authentication_id` representing a 3D Secure error where enrollment lookup is not available `"authentication_unavailable"`
`fake-three-d-secure-visa-mpi-lookup-error-nonce``fake-three-d-secure-visa-mpi-lookup-error-id` A nonce or `three_d_secure_authentication_id` representing a 3D Secure error during the cardholder enrollment lookup `"authentication_unavailable"`
`fake-three-d-secure-visa-mpi-authenticate-error-nonce``fake-three-d-secure-visa-mpi-authenticate-error-id` A nonce or `three_d_secure_authentication_id` representing a 3D Secure error during authentication `"authenticate_error"`
`fake-three-d-secure-visa-authentication-unavailable-nonce``fake-three-d-secure-visa-authentication-unavailable-id` A nonce or `three_d_secure_authentication_id` representing a 3D Secure error where the cardholder is enrolled but authentication is not available `"authenticate_unable_to_authenticate"`
`fake-three-d-secure-visa-bypassed-authentication-nonce``fake-three-d-secure-visa-bypassed-authentication-id` A nonce or `three_d_secure_authentication_id` representing a scenario where 3D Secure must be bypassed to prevent rejections during lookup or authentication service outages `"lookup_bypassed"`
`fake-three-d-secure-two-visa-successful-frictionless-authentication-nonce``fake-three-d-secure-two-visa-successful-frictionless-authentication-id` A nonce or `three_d_secure_authentication_id` representing a 3D Secure 2 successful authentication that did not require a challenge `"authenticate_successful"`
`fake-three-d-secure-two-visa-successful-step-up-authentication-nonce``fake-three-d-secure-two-visa-successful-step-up-authentication-id` A nonce or `three_d_secure_authentication_id` representing a 3D Secure 2 successful authentication that required a challenge `"authenticate_successful"`
`fake-three-d-secure-two-visa-error-on-lookup-nonce``fake-three-d-secure-two-visa-error-on-lookup-id` A nonce or `three_d_secure_authentication_id` representing a 3D Secure 2 error during the cardholder enrollment lookup `"lookup_error"`
`fake-three-d-secure-two-visa-timeout-on-lookup-nonce``fake-three-d-secure-two-visa-timeout-on-lookup-nonce` A nonce or `three_d_secure_authentication_id` representing a 3D secure 2 error where the cardholder enrollment lookup request timed out `"lookup_error"`

Nonce objectsAnchorIcon

When writing integrations tests against the Braintree sandbox environment, you may also use these nonce objects in place of the nonce that would normally be returned from the client side integration.

  1. Ruby
Braintree::Test::Nonce::Transactable
Braintree::Test::Nonce::Consumed
Braintree::Test::Nonce::PayPalOneTimePayment
Braintree::Test::Nonce::PayPalFuturePayment

Settlement statusAnchorIcon

Settlement routes have been exposed to aid with the testing of transactions and the transition between the different statuses. These settlement routes will allow a transaction that has been submitted_for_settlement to transition to settled, or settlement_declined. See the transaction statuses page for additional information on each response.

Example code to change the status of a transaction to settled:

  1. Ruby
sale_result = gateway.transaction.sale({
    amount: "100",
    payment_method_nonce: nonce_from_the_client,
    options: {
        submit_for_settlement: true
    }
});

result = gateway.testing.settle(sale_result.transaction.id);
result.success?.should == true;
result.transaction.status.should == Braintree::Transaction::Status::Settled;

Example code to change the status of a transaction to settlement_declined:

  1. Ruby
sale_result = gateway.transaction.sale({
    amount: "100",
    payment_method_nonce: nonce_from_the_client,
    options: {
        submit_for_settlement: true
    }
});

result = gateway.testing.settlement_decline(sale_result.transaction.id);
result.success?.should == true;
result.transaction.status.should == Braintree::Transaction::Status::SettlementDeclined;

DisputesAnchorIcon

Availability
While anyone can simulate disputes in the sandbox Control Panel, whether you can respond to and manage them in production depends on your account setup. Not all accounts will have disputes available in production.

Creating a disputed test transactionAnchorIcon

You can use the following test card number in the sandbox to create sale transactions of any amount* that are instantly disputed:

Test ValueCard TypeDescription
4023898493988028Visa Creates a settled sale transaction that has a dispute with an status

*Some transaction amounts trigger specific dispute behavior in the sandbox; see creating test disputes that require compelling evidence below. In addition to creating a test dispute, using this test card to create sandbox transactions will allow you to:

  • Receive a dispute email notification
  • Receive a Dispute Opened webhook (if set up)
  • Search for or find the dispute in the Control Panel or via the API
  • Respond to the dispute in the Control Panel or via the API with specific evidence that will update the dispute status to or
Creating test disputes that require compelling evidenceAnchorIcon

The following transaction amounts will set the dispute reason_code accordingly:

AmountDispute Reason Code
83.00`83` Visa Fraud
10.40`1040` Visa Fraud
13.10`1310` Visa Fraud
70.30`7030` Discover Fraud
Creating test disputes for Venmo transactionsAnchorIcon

When creating a Venmo test transaction with the fake-venmo-account-nonce payment method nonce, the following transaction amounts will create and set the dispute status accordingly:

AmountDispute Status
62.00Under Review
62.01Open

Managing test disputes via the APIAnchorIcon

To simulate winning or losing a dispute with any reason code via the API:

  1. Find the dispute
  2. Add text evidence using one of the following strings:
    • compelling_evidence to simulate a won dispute
    • losing_evidence to simulate a lost dispute
  3. Finalize the dispute

Managing test disputes via the Control PanelAnchorIcon

Note
The following steps only apply to disputes in the sandbox that do not have certain fraud-related dispute reason codes. Because fraud-related disputes require specific compelling evidence, they behave differently.

To simulate winning or losing most disputes in the Control Panel:

  1. Log into the sandbox Control Panel
  2. Click on Disputes in the navigation bar
  3. On the row for the dispute you're testing, click the expand button on the far right side of the row, and choose Submit Evidence from the menu of options
  4. Under the Provide Evidence field, enter the following text:
    • compelling_evidence to simulate a won dispute
    • losing_evidence to simulate a lost dispute
  5. Click the Submit Dispute To Processor button

To simulate winning or losing fraud-related disputes in the Control Panel:

  1. Log into the sandbox Control Panel
  2. Click on Disputes in the navigation bar
  3. On the row for the dispute you're testing, click the expand button on the far right side of the row, and choose Submit Evidence from the menu of options
  4. Under the Include Evidence section, select Proof of recurring transaction history as your compelling evidence
  5. Select any date and time
  6. In the Recurring transaction ID field, enter the following text:
    • compelling_evidence to simulate a won dispute
    • losing_evidence to simulate a lost dispute
  7. Click the Submit Dispute to Processor button

Venmo disputesAnchorIcon

To simulate winning or losing Venmo disputes in the Control Panel:

  1. Log into the sandbox Control Panel
  2. Click on Disputes in the navigation bar
  3. On the row for the dispute you're testing, click the expand button on the far right side of the row, and choose Submit Evidence from the menu of options
  4. Under the Evidence Type section, select Other as your evidence type
  5. In the Provide Evidence text field, enter the following text:
    • compelling_evidence to simulate a won dispute
    • losing_evidence to simulate a lost dispute
  6. Click the Submit Dispute button

3D SecureAnchorIcon

Test credit card numbers for 3D Secure transactions are provided by our 3D Secure authentication provider, CardinalCommerce. See the PDF provided in the 3D Secure guide for a complete list.

Fraud toolsAnchorIcon

You can use the following test card number in the sandbox to simulate Premium Fraud Management Tools flagging a transaction as pending review. This feature is only available for Fraud Protection Advanced.

Card TypeTest ValueStatusDecision
Visa`4111140000000002`authorizedReview

You can use the following test card numbers in the sandbox to simulate Premium Fraud Management Tools or risk threshold rules rejecting a request.

Important
In order to access the Risk Threshold gateway rejection reason, you must use at least the version indicated below.
  • Java 3.37.0
  • .NET 5.14.0
  • Node 2.24.0
  • PHP 6.21.0
  • Python 4.31.0
  • Ruby 4.23.0

Otherwise, you will receive an Unrecognized status for the gateway rejection.

Card TypeTest ValueStatusReason
Visa`4000111111111511`gateway_rejectedfraud
Visa`4111130000000003`gateway_rejectedrisk_threshold
Note
The Dashboard/User Interface of Fraud Protection and Fraud Protection Advanced is only for illustrative purposes in sandbox. You will not be able to tweak any settings to reject transactions. For testing transaction rejections, please use the test value for the card number as defined above.

The following payment method nonces represent payment methods that will be gateway rejected by Braintree's various fraud tools.

NonceDescription
`fake-gateway-rejected-kount-nonce` A nonce representing a card that will be gateway rejected by Kount. The `fake-gateway-rejected-kount-nonce` will only work if Premium Fraud Management Tools are enabled.
`fake-gateway-rejected-risk-thresholds-nonce` A nonce representing a card that will be gateway rejected by your risk threshold rules. The `fake-gateway-rejected-risk-thresholds-nonce` will only work if at least one risk threshold rule is enabled
Note
fake-gateway-rejected-fraud-nonce represents a card that will be gateway rejected by Braintree's fraud tools. This is now deprecated.

AVS and CVV/CID responsesAnchorIcon

Note
These will only trigger a fraud response if you have AVS and CVV rules enabled in your sandbox. Learn how to enable AVS and CVV rules and see which rules we recommend.

CVV/CID responsesAnchorIcon

CVVCID (Amex)Response
`200``2000`N (does not match)
`201``2011`U (not verified)
`301``3011`S (issuer does not participate)
no value passedno value passedI (not provided)
any other valueany other valueM (matches)

AVS error responsesAnchorIcon

Billing Postal CodeResponse
`30000`E (AVS system error)
`30001`S (issuing bank does not support AVS)
any other valueblank

AVS postal code responsesAnchorIcon

Billing Postal CodeResponse
`20000`N (does not match)
`20001`U (not verified)
no value passedI (not provided)
any other valueM (matches)

AVS street address responsesAnchorIcon

Billing Street AddressResponse
street number is `200` (e.g. 200 N Main St)N (does not match)
street number is `201` (e.g. 201 N Main St)U (not verified)
no value passedI (not provided)
any other valueM (matches)

Bank routing numbersAnchorIcon

Bank routing numbers must pass a checksum, much like credit card numbers. The following routing numbers are valid, and can be passed to the sandbox:

  • 071101307
  • 071000013

IBAN numbersAnchorIcon

To generate bank account numbers (IBANs) for sandbox testing, please refer to IBAN generator page.

PayPal One TouchAnchorIcon

To make it easier to test out the app switch-based flows for PayPal One Touch on iOS, we created a fake iOS wallet that you can run on the iOS simulator. Clone or download it from GitHub and make sure it's installed on the same simulator you're using for development. To test the One Touch flows on Android, we recommend installing the latest PayPal app on your test device or simulator.

Purge sandbox dataAnchorIcon

You can purge all of the following data from your sandbox:

  • Transactions
  • Customers
  • Payment methods
  • Addresses
  • Disputes
  • Subscriptions
  • Sub-merchant accounts (if you are using Braintree Marketplace)

To purge your sandbox data:

  1. Log into your sandbox Control Panel
  2. Click on the gear icon in the top right corner
  3. Click any option from the drop-down menu to access the settings pages
  4. Click Purge Test Data in the navigation bar
  5. Click the Yes button to confirm your choice

Note
This action will log you out, lock your account, and block API operations until the purge is complete.
Purging this data will not affect regular merchant accounts, recurring billing plans, webhooks, or other account settings. While you can delete individual plans and webhooks, you can't delete merchant accounts.

If you accept cookies, we’ll use them to improve and customize your experience and enable our partners to show you personalized PayPal ads when you visit other sites. Manage cookies and learn more