Create Batch Transaction

The Create Batch Transaction request enables you to process multiple transactions at once, including credit card transactions (Auth Capture only), ACH/ECP, SEPA, and PayPal recurring transactions.

The request includes multiple card-transaction and/or alt-transaction resources; a unique batch ID that you define; and a callback URL pointing to where you would like the status of the batch transaction to be sent after processing.

The API sends an immediate response to the Create Batch Transaction request and then the individual transactions in the request are processed. Once all transactions are processed, BlueSnap sends the full batch result to the callback URL you provided in the request. Some of the transactions may be successfully processed and some may fail. However, as long as the batch file was successfully processed, the callback status of the batch will be completed. For an example of the batch result that is sent to your callback URL after the transactions have been processed, see Example Batch Result.

📘

Transaction limit per batch

There is a limit of 2000 transactions per batch.


📘

Tip

You can test out a request that hits our sandbox in real-time. Follow the instructions here to use the "Try It!" feature on the right side.

Request Content

batch-transaction container    required, contains the following properties (see batch-transaction):

PropertyTypeRequired
batch-idstringrequired
callback-urlstringrequired
card-transactioncontainerrequired for credit card transactions (see card-transaction)
alt-transactioncontainerrequired for ACH/ECP, SEPA, or PayPal transactions (see alt-transaction)

Response Details

If successful, the response HTTP status code is 201 Created.
Note that if an error occurs, the error format is slightly different from other error types. See Batch transaction errors.
For an example of the batch result that is sent to your callback URL after the transactions have been processed, see Example Batch Result.


Examples

Request Examples

curl -v -X POST https://sandbox.bluesnap.com/services/2/batch-transactions \
-H 'Content-Type: application/xml' \
-H 'Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=' \
-d '
<batch-transaction xmlns="http://ws.plimus.com">
  <batch-id>567890</batch-id>
  <callback-url>http://example.com/batch_callback</callback-url>
  <card-transaction>
    <card-transaction-type>AUTH_CAPTURE</card-transaction-type>
    <merchant-transaction-id>566</merchant-transaction-id>
    <amount>20.00</amount>
    <currency>USD</currency>
    <card-holder-info>
      <first-name>Joe</first-name>
      <last-name>Example</last-name>
    </card-holder-info>
    <credit-card>
      <card-number>4263982640269299</card-number>
      <expiration-month>02</expiration-month>
      <expiration-year>2023</expiration-year>
    </credit-card>
  </card-transaction>
    <card-transaction>
    <card-transaction-type>AUTH_CAPTURE</card-transaction-type>
    <merchant-transaction-id>567</merchant-transaction-id>
    <amount>25.00</amount>
    <currency>USD</currency>
    <card-holder-info>
      <first-name>Jane</first-name>
      <last-name>Shopper</last-name>
    </card-holder-info>
    <credit-card>
      <card-number>4111111111111111</card-number>
      <expiration-month>07</expiration-month>
      <expiration-year>2023</expiration-year>
    </credit-card>
  </card-transaction>
</batch-transaction>'
curl -v -X POST https://sandbox.bluesnap.com/services/2/batch-transactions \
-H 'Content-Type: application/xml' \
-H 'Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=' \
-d '
<?xml version="1.0" encoding="UTF-8"?>
<batch-transaction xmlns="http://ws.plimus.com">
   <batch-id>unique_0130076552988</batch-id>
   <callback-url>http://sandbox.bluesnap.com/jsp/batch_callback.jsp</callback-url>
   <card-transaction>
      <card-transaction-type>AUTH_CAPTURE</card-transaction-type>
      <merchant-transaction-id>566</merchant-transaction-id>
      <soft-descriptor>DescTest txn1</soft-descriptor>
      <amount>11.00</amount>
      <currency>USD</currency>
      <vaulted-shopper-id>19567060</vaulted-shopper-id>
    </card-transaction>
    <card-transaction>
      <card-transaction-type>AUTH_CAPTURE</card-transaction-type>
      <merchant-transaction-id>567</merchant-transaction-id>
      <amount>11.00</amount>
      <currency>USD</currency>
      <vaulted-shopper-id>20773559</vaulted-shopper-id>
      <credit-card>
         <card-last-four-digits>9299</card-last-four-digits>
      <card-type>VISA</card-type>
   </credit-card>
   </card-transaction>
</batch-transaction>'
curl -v -X POST https://sandbox.bluesnap.com/services/2/batch-transactions \
-H 'Content-Type: application/xml' \
-H 'Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=' \
-d '
<?xml version="1.0" encoding="UTF-8"?>
<batch-transaction xmlns="http://ws.plimus.com">
   <batch-id>shachaf_014</batch-id>
   <callback-url>http://sandbox.bluesnap.com/jsp/batch_callback.jsp</callback-url>
   <alt-transaction>
      <amount>100.00</amount>
      <currency>USD</currency>
      <paypal-transaction>
         <paypal-subscription-id>1234567</paypal-subscription-id>
      </paypal-transaction>
   </alt-transaction>
</batch-transaction>'

Response Example

HTTP/ 1.1 201 Created

Back to Top


API Explorer

To test out a basic API request, click the "Try It!" button in the right-hand column to test using the default, pre-populated sample values. To test with your own values, edit the parameter fields below. You'll see them populate in the right-hand column and you can click the "Try It!" button to submit your test request and see a response.

<batch-transaction xmlns="http://ws.plimus.com">
  <batch-id>567890</batch-id>
  <callback-url>http://example.com/batch_callback</callback-url>
  <card-transaction>
    <card-transaction-type>AUTH_CAPTURE</card-transaction-type>
    <merchant-transaction-id>566</merchant-transaction-id>
    <amount>20.00</amount>
    <currency>USD</currency>
    <card-holder-info>
      <first-name>Joe</first-name>
      <last-name>Example</last-name>
    </card-holder-info>
    <credit-card>
      <card-number>4263982640269299</card-number>
      <expiration-month>02</expiration-month>
      <expiration-year>2023</expiration-year>
    </credit-card>
  </card-transaction>
    <card-transaction>
    <card-transaction-type>AUTH_CAPTURE</card-transaction-type>
    <merchant-transaction-id>567</merchant-transaction-id>
    <amount>25.00</amount>
    <currency>USD</currency>
    <card-holder-info>
      <first-name>Jane</first-name>
      <last-name>Shopper</last-name>
    </card-holder-info>
    <credit-card>
      <card-number>4111111111111111</card-number>
      <expiration-month>07</expiration-month>
      <expiration-year>2023</expiration-year>
    </credit-card>
  </card-transaction>
</batch-transaction>
Language
Authorization
Header
Click Try It! to start a request and see the response here!