Perform a test purchase with SPEI Transfers
To test your integration with SPEI Transfers you'll need to create an order with predefined values. This means that it will only be possible to verify the operation of your integration through a requisition, and not by simulating a purchase. To do this, follow the steps below.
To perform these tests, send the following request to the /v1/ordersPOST endpoint, along with your test Access TokenPrivate key linked to an application, used in the backend to authenticate operations in the test environment. You can find it in the application's Credentials section, within the test environment. It cannot process real payments, must never be exposed in the frontend, and starts with the `APP_USR` prefix..
curlcurl --request POST \ --url https://api.mercadopago.com/v1/orders \ --header 'Content-Type: application/json' \ --data '{ "type": "online", "external_reference": "ext_ref_1234", "processing_mode": "automatic", "marketplace": "NONE", "total_amount": "200.00", "payer": { "first_name": "John", "email": "test_payer@example.com" }, "transactions": { "payments": [ { "amount": "200.00", "payment_method": { "id": "clabe", "type": "bank_transfer" } } ] } } '
This request will return a response with the status action_required, which indicates that payment is pending, as shown below.
json{ "id": "ORD01JPQVD4ED4QSPT1N787C8PYQT", "processing_mode": "automatic", "external_reference": "ext_ref_1234", "marketplace": "NONE", "site_id": "MLM", "user_id": "1735143232", "product_id": "CIFI5HEOD60B64QAI5O0", "capture_mode": "automatic", "currency": "MXN", "type": "online", "status": "action_required", "status_detail": "waiting_transfer", "total_amount": "200.00", "created_date": "2025-03-19T18:42:12.557054278Z", "last_updated_date": "2025-03-19T18:42:13.645123166Z", "integration_data": { "application_id": "4863578097401450" }, "payer": { "email": "test_payer@example.com", "first_name": "Payer Name" }, "transactions": { "payments": [ { "id": "PAY01JPQVD4ED4QSPT1N7895PA160", "date_of_expiration": "2027-12-31T10:00:00.000-04:00", "status": "action_required", "status_detail": "waiting_transfer", "amount": "200.00", "payment_method": { "id": "clabe", "type": "bank_transfer", "ticket_url": "https://www.mercadopago.com.mx/payments/105292425055/ticket?caller_id=1872745950&hash=0db37f93-34e2-45cd-acd6-c8a8950b0512", "reference": "646010349353743569" }, "reference": { "id": "0002inkmnw", "source": "transaction_intent", "metadata": { "from_id": "01JPQVD4H5NT6DZDV5BQX7YB3G", "to_id": "01JPQVD4H5QA5XCTFVBHD17GHE" } } } ] } }
Finally, to verify if the test order was created correctly, send a request to the /v1/orders/{id}GET endpoint, replacing id with the order identification, received in the response to its creation.
Alternatively, you can check the payment result from your application. To do so, go to Integrations and select the application card. Make sure the selector at the top is set to Test and, on the Home screen, select the Test payments tab. Then, find the payment and click it to view its details and status.
Ready! Once these steps are completed, the integration of SPEI Transfers as a payment method is complete, and you can either continue testing other integrated payment methods, or go to production.