{"_id":"59525a4428e9ae004b965949","category":{"_id":"59525a4328e9ae004b965920","version":"59525a4328e9ae004b96591c","project":"57336fd5a6a9c40e00e13a0b","__v":0,"sync":{"url":"","isSync":false},"reference":false,"createdAt":"2017-03-17T15:51:04.102Z","from_sync":false,"order":3,"slug":"marketplace","title":"Marketplace"},"parentDoc":null,"project":"57336fd5a6a9c40e00e13a0b","user":"560d5913af97231900938124","version":{"_id":"59525a4328e9ae004b96591c","project":"57336fd5a6a9c40e00e13a0b","__v":1,"createdAt":"2017-06-27T13:14:43.386Z","releaseDate":"2017-06-27T13:14:43.386Z","categories":["59525a4328e9ae004b96591d","59525a4328e9ae004b96591e","59525a4328e9ae004b96591f","59525a4328e9ae004b965920","59525a4328e9ae004b965921","59525a4328e9ae004b965922","59525a4328e9ae004b965923"],"is_deprecated":false,"is_hidden":false,"is_beta":false,"is_stable":true,"codename":"v.3.22.0 release","version_clean":"8976.0.0-Basics","version":"8976-Basics"},"__v":0,"updates":[],"next":{"pages":[],"description":""},"createdAt":"2017-03-17T15:52:13.570Z","link_external":false,"link_url":"","githubsync":"","sync_unique":"","hidden":false,"api":{"results":{"codes":[]},"settings":"","auth":"required","params":[],"url":""},"isReference":false,"order":4,"body":"This section will cover the following topics: \n* [Processing transactions overview](#section-processing-transactions-overview)\n* [Overriding commission rate in a transaction request](#section-overriding-commission-rate-in-a-transaction-request)\n* [Card transactions](#section-card-transactions)\n* [ACH transactions](#section-ach-transactions)\n* [Subscriptions](#section-subscriptions)\n* [Refunds & chargebacks](#section-refunds-chargebacks)\n\n##Processing transactions overview\nAs the Marketplace Merchant, you'll send transactions for processing on your vendor's behalf. We'll cover how to perform transaction requests involving cards, ACH/ECP, and subscriptions.\n\nIf your vendor's [processing status](doc:vendor-onboarding#section-processing-status) is active, then you can process transactions on their behalf. To link your vendor to a marketplace transaction, include `vendorInfo` in the request as shown below. The vendor ID will connect the transaction to you and your vendor, and will be included as part of the payout calculation.\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"{ \\n  \\\"vendorInfo\\\": {\\n    \\\"vendorId\\\": \\\"19575974\\\"\\n  }\\n  ...\\n}\",\n      \"language\": \"json\"\n    },\n    {\n      \"code\": \"...\\n<vendor-info>\\n  <vendor-id>19575974</vendor-id> \\n</vendor-info>\\n...\",\n      \"language\": \"xml\",\n      \"name\": \"XML\"\n    }\n  ]\n}\n[/block]\n\n[block:callout]\n{\n  \"type\": \"info\",\n  \"title\": \"Commission Split\",\n  \"body\": \"The commission split will occur when the shopper's funds are captured.\"\n}\n[/block]\n <a class=\"btn btn-primary\" href=\"#\" role=\"button\">Back to Top</a>\n\n<hr>\n\n##Overriding commission rate in a transaction request\nYou have the option to override the commission value (set in the Create and Update Vendor requests) for a specific transaction. Include the `commissionPercent` property to override the commission rate with a percentage, or include the `commissionAmount` property to override the commission rate with an amount. \n\n###Commission Percent\n To override the commission rate with a percent, include the `commissionPercent` property in the request. In this example, the commission value is 30 percent.\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"{\\n  \\\"vendorInfo\\\": {\\n    \\\"vendorId\\\": \\\"19575974\\\", \\n    \\\"commissionPercent\\\": 30\\n  }\\n  ...\\n}\",\n      \"language\": \"json\",\n      \"name\": \"JSON\"\n    },\n    {\n      \"code\": \"...\\n<vendor-info>\\n  <vendor-id>19575974</vendor-id>\\n  <commission-percent>30</commission-percent>\\n</vendor-info>\\n...\",\n      \"language\": \"xml\",\n      \"name\": \"XML\"\n    }\n  ]\n}\n[/block]\n###Commission Amount\nTo override the commission rate with a specified amount, include the `commissionAmount` property in the request. In this example, the commission amount is 40. The currency will be the same as the transaction currency. For example, if the transaction currency is USD, the commission amount will be in USD as well. \n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"{\\n  \\\"vendorInfo\\\": {\\n    \\\"vendorId\\\": \\\"19575974\\\", \\n    \\\"commissionAmount\\\": 40\\n  }\\n  ...\\n}\",\n      \"language\": \"json\",\n      \"name\": \"JSON\"\n    },\n    {\n      \"code\": \"...\\n<vendor-info>\\n  <vendor-id>19575974</vendor-id>\\n  <commission-amount>40</commission-amount>\\n</vendor-info>\\n...\",\n      \"language\": \"xml\",\n      \"name\": \"XML\"\n    }\n  ]\n}\n[/block]\n<a class=\"btn btn-primary\" href=\"#\" role=\"button\">Back to Top</a>\n\n<hr>\n\n##Card transactions\n###Auth and Capture \nTo do the authorization and capture in the same step, you'll perform an [Auth Capture](/v2.1/docs/auth-capture) request. This payment flow is most notable for digital goods or physical goods that are in stock and are ready to be shipped immediately after the purchase. You'll include `vendorInfo` in the request body as shown above in [Processing transactions overview](#section-processing-transactions-overview). \n\n###Separate Auth and Capture\nTo separate the authorization and capture steps, you can perform two separate calls: [Auth Only](/v2.1/docs/auth-only) and then [Capture](/v2.1/docs/capture). You can link the vendor to the transaction in either request  by including `vendorInfo` in the body. This payment flow is most notable if the good/service is going to be delivered after the time of the purchase. \n\n**Linking vendor to transaction in Auth Only request**\nIf you link the vendor to the transaction in the Auth Only request, then you most likely know which vendor will deliver the good/service right away. In the Auth Only request, include `vendorInfo` as shown above in [Processing transactions overview](#section-processing-transactions-overview). In the Capture request, you can omit `vendorInfo`. \n\n:fa-arrow-circle-right: Check out these examples: [Auth Only - basic with vendor info](/v2.1/docs/auth-only#section-request-examples) and [Capture - basic](/v2.1/docs/capture#section-request-example). \n\n**Linking vendor to transaction in Capture request**\nLinking the vendor to the transaction in the Capture request gives you time after the initial authorization to identify the specific vendor that is going to deliver the good/service. In the Auth Only request, you can omit `vendorInfo`. In the Capture request, include `vendorInfo` as shown above in [Processing transaction overview](#section-processing-transactions-overview). \n\n:fa-arrow-circle-right: Check out these examples: [Auth Only - basic with fraud info](/v2.1/docs/auth-only#section-request-examples) and [Capture - with vendor info](/v2.1/docs/capture#section-request-example). \n\n**Note**: If you include `vendorInfo` in both the Auth Only and Capture requests, then the vendor information sent in the Capture request will override.  \n\n<a class=\"btn btn-primary\" href=\"#\" role=\"button\">Back to Top</a>\n\n<hr>\n\n##ACH transactions\nTo perform an ACH/ECP transaction on behalf of a vendor, send a [Create ECP Transaction](/v2.1/docs/create-ecp-transaction) request.\n\n##Subscriptions\nWith BlueSnap's [subscription engine](https://developers.bluesnap.com/v2.1/docs/subscription-management#section-bluesnap-subscription-billing-engine), recurring transactions will run automatically based on the created plan schedule. Each time the transaction is processed, a commission split will be generated and added to your BlueSnap account. First create a [plan](/v2.1/docs/create-plan), then create a [subscription](/v2.1/docs/create-subscription). \n\n<hr>\n\n##Refunds & chargebacks\n###Refunds\nWhen you perform a refund on behalf of a vendor, you have the option to manage the refund amount associated with the vendor.  The URL parameter `vendoramount` is used to override the vendor's portion of a refund if so desired.  \n\nExample: `/services/2/transactions/38418858/refund?amount=300&vendoramount=90`\n\nIf `vendoramount` is left blank, the refund will be split according to the commission split set with the original transaction.\n\nVisit our [API Reference](/v2.1/docs/refund) for more information:\n\n###Chargebacks\nIn the case of chargebacks, BlueSnap will automatically issue a refund. The refund will be split between the Marketplace Merchant and the associated vendor according to the commission split set with the original transaction. Any chargeback fees will be charged to the Marketplace Merchant. \n<br />\n\n<a class=\"btn btn-primary\" href=\"#\" role=\"button\">Back to Top</a>\n\n<hr>\n\n##Next: Reporting \nNow that you've learned about how to process transactions, move on to learn about our reporting capabilities. \n\n**[➔ Reporting](/docs/reporting)**","excerpt":"Learn how to send transactions for processing on your vendor's behalf.\nIf you have questions after reading this guide, check out our answers to [frequently asked questions](https://support.bluesnap.com/docs/merchant-faqs#section--what-is-a-marketplace-).","slug":"processing-transactions","type":"basic","title":"Processing Transactions"}

Processing Transactions

Learn how to send transactions for processing on your vendor's behalf. If you have questions after reading this guide, check out our answers to [frequently asked questions](https://support.bluesnap.com/docs/merchant-faqs#section--what-is-a-marketplace-).

This section will cover the following topics:

Processing transactions overview

As the Marketplace Merchant, you'll send transactions for processing on your vendor's behalf. We'll cover how to perform transaction requests involving cards, ACH/ECP, and subscriptions.

If your vendor's processing status is active, then you can process transactions on their behalf. To link your vendor to a marketplace transaction, include vendorInfo in the request as shown below. The vendor ID will connect the transaction to you and your vendor, and will be included as part of the payout calculation.

{ 
  "vendorInfo": {
    "vendorId": "19575974"
  }
  ...
}
...
<vendor-info>
  <vendor-id>19575974</vendor-id> 
</vendor-info>
...

Commission Split

The commission split will occur when the shopper's funds are captured.

Back to Top


Overriding commission rate in a transaction request

You have the option to override the commission value (set in the Create and Update Vendor requests) for a specific transaction. Include the commissionPercent property to override the commission rate with a percentage, or include the commissionAmount property to override the commission rate with an amount.

Commission Percent

To override the commission rate with a percent, include the commissionPercent property in the request. In this example, the commission value is 30 percent.

{
  "vendorInfo": {
    "vendorId": "19575974", 
    "commissionPercent": 30
  }
  ...
}
...
<vendor-info>
  <vendor-id>19575974</vendor-id>
  <commission-percent>30</commission-percent>
</vendor-info>
...

Commission Amount

To override the commission rate with a specified amount, include the commissionAmount property in the request. In this example, the commission amount is 40. The currency will be the same as the transaction currency. For example, if the transaction currency is USD, the commission amount will be in USD as well.

{
  "vendorInfo": {
    "vendorId": "19575974", 
    "commissionAmount": 40
  }
  ...
}
...
<vendor-info>
  <vendor-id>19575974</vendor-id>
  <commission-amount>40</commission-amount>
</vendor-info>
...

Back to Top


Card transactions

Auth and Capture

To do the authorization and capture in the same step, you'll perform an Auth Capture request. This payment flow is most notable for digital goods or physical goods that are in stock and are ready to be shipped immediately after the purchase. You'll include vendorInfo in the request body as shown above in Processing transactions overview.

Separate Auth and Capture

To separate the authorization and capture steps, you can perform two separate calls: Auth Only and then Capture. You can link the vendor to the transaction in either request by including vendorInfo in the body. This payment flow is most notable if the good/service is going to be delivered after the time of the purchase.

Linking vendor to transaction in Auth Only request
If you link the vendor to the transaction in the Auth Only request, then you most likely know which vendor will deliver the good/service right away. In the Auth Only request, include vendorInfo as shown above in Processing transactions overview. In the Capture request, you can omit vendorInfo.

Check out these examples: Auth Only - basic with vendor info and Capture - basic.

Linking vendor to transaction in Capture request
Linking the vendor to the transaction in the Capture request gives you time after the initial authorization to identify the specific vendor that is going to deliver the good/service. In the Auth Only request, you can omit vendorInfo. In the Capture request, include vendorInfo as shown above in Processing transaction overview.

Check out these examples: Auth Only - basic with fraud info and Capture - with vendor info.

Note: If you include vendorInfo in both the Auth Only and Capture requests, then the vendor information sent in the Capture request will override.

Back to Top


ACH transactions

To perform an ACH/ECP transaction on behalf of a vendor, send a Create ECP Transaction request.

Subscriptions

With BlueSnap's subscription engine, recurring transactions will run automatically based on the created plan schedule. Each time the transaction is processed, a commission split will be generated and added to your BlueSnap account. First create a plan, then create a subscription.


Refunds & chargebacks

Refunds

When you perform a refund on behalf of a vendor, you have the option to manage the refund amount associated with the vendor. The URL parameter vendoramount is used to override the vendor's portion of a refund if so desired.

Example: /services/2/transactions/38418858/refund?amount=300&vendoramount=90

If vendoramount is left blank, the refund will be split according to the commission split set with the original transaction.

Visit our API Reference for more information:

Chargebacks

In the case of chargebacks, BlueSnap will automatically issue a refund. The refund will be split between the Marketplace Merchant and the associated vendor according to the commission split set with the original transaction. Any chargeback fees will be charged to the Marketplace Merchant.

Back to Top


Next: Reporting

Now that you've learned about how to process transactions, move on to learn about our reporting capabilities.

➔ Reporting