tag with id="rapyd-toolkit":
Initialize the Save Card Details Page object with the following fields:
* * JavaScript
* let toolkit = new RapydToolkit({
button\_text: "Save",
/\* Text that appears on the Save button.
String. Maximum length is 16 characters.
Default is "Save". Optional. \*/
button\_color: "blue",
/\* Color of the 'Save' button. String.
Standard CSS color name or hexadecimal code such as #323fff.
Default is the color that is returned in the 'merchant\_color'
field of the response to 'Save Card Details Page'. Optional.\*/
id: "hp\_card\_bd334669c8a80bc68c124b144c350b7f",
/\* ID of the 'Save Card Details Page' response. String. Required.\*/
close\_on\_complete: true,
/\* Causes the embedded Rapyd Toolkit window to close
when the action is complete. Boolean. Default is 'true'. Optional.\*/
page\_type: “card\_token”
/\* Mandatory for save card details page
Default is "collection". \*/
style: {
global: {
fonts: \[\
"https://fonts.googleapis.com/css2?family=Mulish:wght@200&display=swap",\
{\
family: 'myCustomFont',\
src: '/fonts/myCustomFontRegular.woff2',\
fontWeight: 400\
},\
{\
family: 'myCustomFont',\
src: '/fonts/myCustomFontBold.woff2',\
fontWeight: 700\
}\
\]
},
save: {
base: {
backgroundColor: '#0000FF',
// If passed for the 'Save' element, it will override the button\_color field.
fontFamily: 'myCustomFont',
}
}
});
Call display Toolkit() to display the Save Card Details Page:
toolkit.displayToolkit();
Optional step: If close\_on\_complete is set to false, call checkout.closeCheckout() to close the Rapyd Checkout Toolkit window.
toolkit.closeToolkit();
Insert your code that runs when the following events occur. Use your code to read the event field in the 'window' object.
* * JavaScript
* window.addEventListener('onSaveCardDetailsSuccess', (event) => {
console.log(event.detail)
// Returns ‘Payment’ object.
// Client code.
})
window.addEventListener('onSaveCardDetailsFailure', (event) => {
console.error(event.detail.error)
// Returns an error message from the API.
// Client code.
window.addEventListener('onLoading', (event) => {
console.log(event.detail.loading)
// Returns true or false depending on the loading state
// Client code.
* If the card is successfully saved, the customer is returned to your website, according to the code you entered for the **onSaveCardDetailsSuccess** event.
* If the process fails, the customer is returned to your website, according to the code you entered for the **onSaveCardDetailsFailure** event.
### 3D Secure flow:
In case the customer is required to go through a 3DS authentication process, the required URL will be provided in the redirect\_url field (part of the payment object). Make sure to redirect the customer to this page.
In this section:
In Rapyd, the sandbox environment provides most of the functionality of the production environment, without using real money. Interested persons can use the sandbox to explore Rapyd's product offering or to test software integrations with Rapyd's API.
Search results
--------------
No results found
* [Prev](save-card-details-with-rapyd-checkout.html#idp217992)
* [Next](hosted-save-card-details-page.html#idp218081)
---
# Payment Failed Webhook
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [API Reference](api-reference.html)
* [Rapyd Collect](rapyd-collect-363484.html)
* [Payment](payment.html)
* [Payment Webhooks](payment-webhooks.html)
* Payment Failed Webhook
* [Prev](payment-expired-webhook.html)
* [Next](payment-reversed-webhook.html)
###### Payment Failed Webhook
The **PAYMENT\_FAILED** webhook is sent when Rapyd attempts to collect from the customer’s designated payment method, and the collection attempt fails.
[###### Parameters](#idp288866_body)
[###### Webhook Header Parameters](#idp288868_body)
[###### Webhook Root Parameters](#idp288908_body)
[###### Webhook Data Parameters](#idp288981_body)
* PAYMENT\_FAILED Webhook
* {
"id": "wh\_6d0b1efc39424f33556a300434cccc74",
"type": "PAYMENT\_FAILED",
"data": {
"id": "payment\_7e88b177125a02639ce2fc3bfd890aca",
"mid": "",
"paid": false,
"order": null,
"amount": 5,
"escrow": null,
"status": "ERR",
"address": null,
"dispute": null,
"fx\_rate": 1,
"invoice": "",
"outcome": null,
"paid\_at": 0,
"refunds": null,
"captured": true,
"ewallets": \[{\
"amount": 5,\
"percent": 100,\
"ewallet\_id": "ewallet\_56e3911e5fec5db8e0a36e1212bf4576",\
"refunded\_amount": 0\
}\
\],
"metadata": {},
"refunded": false,
"auth\_code": null,
"flow\_type": "",
"created\_at": 0,
"error\_code": "ERROR\_3DS\_AUTHENTICATION\_FAILURE",
"ewallet\_id": "ewallet\_56e3911e5fec5db8e0a36e1212bf4576",
"expiration": 0,
"fixed\_side": "",
"is\_partial": false,
"description": "testing",
"capture": true,
"next\_action": "not\_applicable",
"country\_code": "AT",
"failure\_code": "ERROR\_3DS\_AUTHENTICATION\_FAILURE",
"instructions": {},
"payment\_fees": null,
"redirect\_url": "",
"visual\_codes": {},
"cancel\_reason": null,
"currency\_code": "USD",
"group\_payment": "",
"receipt\_email": "",
"textual\_codes": {},
"customer\_token": "",
"payment\_method": "card\_401e2852143c77ca1326f310a7e2d56b",
"receipt\_number": "",
"transaction\_id": "",
"failure\_message": "A message element required is missing from the message (eci)",
"initiation\_type": "customer\_present",
"original\_amount": 5,
"refunded\_amount": 0,
"error\_payment\_url": "http://www.rapyd.net/error.html",
"payment\_method\_data": {
"id": "card\_401e2852143c77ca1326f310a7e2d56b",
"name": "Jon Doe",
"type": "at\_mastercard\_card",
"image": "",
"last4": "0119",
"category": "card",
"metadata": null,
"acs\_check": "unchecked",
"cvv\_check": "unchecked",
"bin\_details": {
"type": "CREDIT",
"brand": "MASTERCARD",
"level": "PLATINUM",
"country": "US",
"bin\_number": "523929"
},
"next\_action": "not\_applicable",
"webhook\_url": "",
"expiration\_year": "29",
"expiration\_month": "04",
"fingerprint\_token": "ocfp\_11ECFC3994C38A7281220EC01B2F2B1B",
"supporting\_documentation": ""
},
"payment\_method\_type": "",
"complete\_payment\_url": "http://www.rapyd.net",
"remitter\_information": {},
"statement\_descriptor": "Doc Team",
"authentication\_result": {
"eci": null,
"result": "N",
"version": "2.2.0"
},
"merchant\_reference\_id": "",
"payment\_method\_options": {
"3d\_required": true
},
"merchant\_requested\_amount": null,
"merchant\_requested\_currency": null,
"payment\_method\_type\_category": ""
},
"trigger\_operation\_id": "9846cf13-6983-4888-88d4-c0b378dec372",
"status": "NEW",
"created\_at": 1675341357,
"extended\_timestamp": 1675341357981
}
In this section:
The number of seconds elapsed since the beginning of the Unix epoch, which was 00:00:00 GMT on January 1, 1970. 10-digit integer.
A number for a bank account that is used for international transfers.
A server used by [issuing banks](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_issuer)
to authenticate card users by [3DS](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_rds)
authentication.
For card transactions, a service that checks whether the cardholder's billing address matches the address for the cardholder's account.
An alphanumeric identifier for financial institutions, also known informally as a [SWIFT](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_swift)
code or SWIFT/BIC code.
A numeric identifier for financial institutions. It appears as the first four to six digits on a payment card.
A unique number for a payment card, usually 14 to 19 digits in length. Also known as a [card number](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_card-number)
, [payment card number](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_payment-card-number)
or [funding primary account number (FPAN)](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_fpan)
.
A numeric code printed on the card, consisting of 3 or 4 digits. Use of the code indicates that the person making the transaction has access to the physical card. This value cannot be stored in any way. Also known as [CCV](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_ccv)
, [CID](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_cid)
, [CSC](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_csc)
and [CVC](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_cvc)
.
A protocol that provides increased security for card-not-present transactions. Rapyd supports version 2.2.
Search results
--------------
No results found
* [Prev](payment-expired-webhook.html)
* [Next](payment-reversed-webhook.html)
---
# Customer Updated Webhook
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [API Reference](api-reference.html)
* [Rapyd Collect](rapyd-collect-363484.html)
* [Customer](customer.html)
* [Customer Webhooks](customer-webhooks.html)
* Customer Updated Webhook
* [Prev](customer-deleted-webhook.html)
* [Next](customer-errors.html)
###### Customer Updated Webhook
The **CUSTOMER\_UPDATED** webhook is sent when a customer is updated.
[###### Parameters](#idp337505_body)
[###### Webhook Header Parameters](#idp337507_body)
[###### Webhook Root Parameters](#idp337547_body)
[###### Webhook Data Parameters](#idp337620_body)
* CUSTOMER\_UPDATED Webhook
* {
"id": "wh\_0d2bf25d7d59bf95396e65f6230943e8",
"type": "CUSTOMER\_UPDATED",
"data": {
"id": "cus\_571ef03ba58cb493317b49dfea644bf1",
"name": "John Doe",
"email": "johndoe@rapyd.net",
"ewallet": "ewallet\_e16b6e751207d0a7f26cd228ef078b0b",
"discount": null,
"metadata": {
"merchant\_defined": true
},
"addresses": \[\],
"created\_at": 1640536833,
"delinquent": false,
"description": "",
"phone\_number": "+14155556666",
"subscriptions": null,
"invoice\_prefix": "JD-",
"business\_vat\_id": "123456766",
"payment\_methods": {
"url": "/v1/customers/cus\_571ef03ba58cb493317b49dfea644bf1/payment\_methods",
"data": \[{\
"id": "card\_b6a12fc24fe700c35a615da034e638dd",\
"name": "John Doe",\
"type": "ua\_visa\_card",\
"image": "https://iconslib.rapyd.net/checkout/ua\_visa\_card.png",\
"last4": "1111",\
"category": "card",\
"metadata": null,\
"acs\_check": "unchecked",\
"cvv\_check": "unchecked",\
"bin\_details": {\
"type": null,\
"brand": null,\
"country": null,\
"bin\_number": "411111"\
},\
"next\_action": "3d\_verification",\
"webhook\_url": "",\
"expiration\_year": "23",\
"expiration\_month": "10",\
"fingerprint\_token": "ocfp\_e599f990674473ce6283b245e9ad2467",\
"supporting\_documentation": ""\
}\
\],
"has\_more": false,
"total\_count": 1
},
"default\_payment\_method": "card\_b6a12fc24fe700c35a615da034e638dd"
},
"trigger\_operation\_id": "507ddf34-48d1-4595-a1eb-fb605d2b4357",
"status": "NEW",
"created\_at": 1640537013,
"extended\_timestamp": 1640537013831
}
In this section:
The number of seconds elapsed since the beginning of the Unix epoch, which was 00:00:00 GMT on January 1, 1970. 10-digit integer.
Search results
--------------
No results found
* [Prev](customer-deleted-webhook.html)
* [Next](customer-errors.html)
---
# Card Added Failure Webhook
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [API Reference](api-reference.html)
* [Rapyd Collect](rapyd-collect-363484.html)
* [Customer Payment Method](customer-payment-method.html)
* [Payment Method Webhooks](payment-method-webhooks.html)
* Card Added Failure Webhook
* [Prev](payment-method-webhooks.html)
* [Next](card-added-successfully-webhook.html)
###### Card Added Failure Webhook
The **CARD\_ADDED\_FAILURE** webhook is sent when adding a card payment method to a customer fails.
[###### Parameters](#idp341470_body)
[###### Webhook Header Parameters](#idp341472_body)
[###### Webhook Root Parameters](#idp341512_body)
[###### Webhook Data Parameters](#idp341585_body)
* CARD\_ADDED\_FAILURE Webhook
* {
"id": "wh\_5f64b6fc3fdd73c35b072e3b0a4bd996",
"error\_code":"ERROR\_PROCESSING\_CARD \[51\]",
"data": {
"id": "card\_cbda68b6410bcb0a0ad0211170142c55",
"name": "John Doe",
"type": "at\_mastercard\_card",
"image": "",
"last4": "0101",
"category": "card",
"metadata": {},
"acs\_check": "unchecked",
"cvv\_check": "unchecked",
"bin\_details": {
"type": "CREDIT",
"brand": "MASTERCARD",
"country": "US",
"bin\_number": "523929"
},
"next\_action": "not\_applicable",
"webhook\_url": "",
"failure\_code": "",
"failure\_reason": "",
"expiration\_year": "22",
"expiration\_month": "04",
"fingerprint\_token": "ocfp\_cac4c6d353453a7f009afca5173f5def",
"supporting\_documentation": ""
},
"type": "CARD\_ADDED\_FAILURE",
"status": "NEW",
"created\_at": 1639272531,
"extended\_timestamp": 1639272531384,
"trigger\_operation\_id": "a6881f23-e796-459e-9f93-b59617021389"
}
In this section:
The number of seconds elapsed since the beginning of the Unix epoch, which was 00:00:00 GMT on January 1, 1970. 10-digit integer.
A number for a bank account that is used for international transfers.
A server used by [issuing banks](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_issuer)
to authenticate card users by [3DS](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_rds)
authentication.
Search results
--------------
No results found
* [Prev](payment-method-webhooks.html)
* [Next](card-added-successfully-webhook.html)
---
# Payment Succeeded Webhook
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [API Reference](api-reference.html)
* [Rapyd Collect](rapyd-collect-363484.html)
* [Payment](payment.html)
* [Payment Webhooks](payment-webhooks.html)
* Payment Succeeded Webhook
* [Prev](payment-reversed-webhook.html)
* [Next](payment-updated-webhook.html)
###### Payment Succeeded Webhook
The **PAYMENT\_SUCCEEDED** webhook is sent when a [Create Payment](create-payment.html "Create Payment")
request has been successfully received on the Rapyd platform. The `status` field indicates the status of the actual payment. In the case of card payments that trigger the 3DS challenge flow, the status will be **ACT** and the actual result of the payment will not be known until a later point in time.
[###### Parameters](#idp291953_body)
[###### Webhook Header Parameters](#idp291955_body)
[###### Webhook Root Parameters](#idp291995_body)
[###### Webhook Data Parameters](#idp292068_body)
* PAYMENT\_SUCCEEDED Webhook
* {
"id": "wh\_553e242e4e54ccc75c21b20710df0902",
"data": {
"id": "payment\_56f3eb8ec543a3962ce112b4f03da9ae",
"mid": "",
"paid": false,
"order": null,
"amount": 0,
"escrow": null,
"status": "ACT",
"address": null,
"dispute": null,
"fx\_rate": 1,
"invoice": "",
"outcome": null,
"paid\_at": 0,
"refunds": null,
"captured": false,
"ewallets": \[{\
"amount": 10,\
"percent": 100,\
"ewallet\_id": "ewallet\_6a6669f4febd8b2eb9c5d77e7161a679",\
"refunded\_amount": 0\
}\
\],
"metadata": {},
"refunded": false,
"auth\_code": null,
"flow\_type": "",
"created\_at": 1689859010,
"error\_code": "",
"ewallet\_id": "ewallet\_6a6669f4febd8b2eb9c5d77e7161a679",
"expiration": 1689859548,
"fixed\_side": "",
"is\_partial": false,
"description": "testing",
"next\_action": "3d\_verification",
"country\_code": "IT",
"failure\_code": "",
"instructions": \[\],
"payment\_fees": null,
"redirect\_url": "https://qacheckout.rapyd.net/3ds-payment?token=payment\_56f3eb8ec543a3962ce112b4f03da9ae",
"visual\_codes": {},
"cancel\_reason": null,
"currency\_code": "USD",
"group\_payment": "",
"receipt\_email": "",
"textual\_codes": {},
"customer\_token": "cus\_0335a29669a3f4337317d6e1441df763",
"payment\_method": "card\_27a4c2f05d9ebd1700f5338e155c1ced",
"receipt\_number": "",
"transaction\_id": "",
"failure\_message": "",
"initiation\_type": "customer\_present",
"original\_amount": 10,
"refunded\_amount": 0,
"error\_payment\_url": "https://support.rapyd.net/hc/en-us",
"payment\_method\_data": {
"id": "card\_27a4c2f05d9ebd1700f5338e155c1ced",
"name": "Auto Test",
"type": "it\_visa\_card",
"image": "",
"last4": "1111",
"category": "card",
"metadata": null,
"acs\_check": "unchecked",
"cvv\_check": "unchecked",
"bin\_details": {
"type": "CREDIT",
"brand": "VISA",
"level": null,
"issuer": "JPMORGAN CHASE BANK, N.A.",
"country": "US",
"bin\_number": "411111"
},
"next\_action": "3d\_verification",
"webhook\_url": "",
"expiration\_year": "24",
"expiration\_month": "12",
"fingerprint\_token": "ocfp\_11ECFC396977BB4E81220EC01B2F2B1B",
"supporting\_documentation": ""
},
"payment\_method\_type": "it\_visa\_card",
"save\_payment\_method": true,
"complete\_payment\_url": "https://www.rapyd.net",
"remitter\_information": {},
"statement\_descriptor": "card\_tokenization\_with",
"merchant\_reference\_id": "",
"payment\_method\_options": {
"3d\_required": true
},
"merchant\_requested\_amount": null,
"merchant\_requested\_currency": null,
"payment\_method\_type\_category": "card"
},
"type": "PAYMENT\_SUCCEEDED",
"status": "NEW",
"created\_at": 1689859010,
"extended\_timestamp": 1689859010395,
"trigger\_operation\_id": "c3d1ac9d-139b-4c55-8da4-b1c32cf88fa9"
}
In this section:
The number of seconds elapsed since the beginning of the Unix epoch, which was 00:00:00 GMT on January 1, 1970. 10-digit integer.
A number for a bank account that is used for international transfers.
A server used by [issuing banks](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_issuer)
to authenticate card users by [3DS](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_rds)
authentication.
For card transactions, a service that checks whether the cardholder's billing address matches the address for the cardholder's account.
An alphanumeric identifier for financial institutions, also known informally as a [SWIFT](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_swift)
code or SWIFT/BIC code.
A numeric identifier for financial institutions. It appears as the first four to six digits on a payment card.
A unique number for a payment card, usually 14 to 19 digits in length. Also known as a [card number](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_card-number)
, [payment card number](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_payment-card-number)
or [funding primary account number (FPAN)](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_fpan)
.
A numeric code printed on the card, consisting of 3 or 4 digits. Use of the code indicates that the person making the transaction has access to the physical card. This value cannot be stored in any way. Also known as [CCV](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_ccv)
, [CID](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_cid)
, [CSC](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_csc)
and [CVC](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_cvc)
.
A protocol that provides increased security for card-not-present transactions. Rapyd supports version 2.2.
Search results
--------------
No results found
* [Prev](payment-reversed-webhook.html)
* [Next](payment-updated-webhook.html)
---
# Merchant Reconciliation Report
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Client Portal Guide](client-portal-guide.html)
* [Reports](reports-367106.html)
* Merchant Reconciliation Report
* [Prev](failed-payments-report.html#idp264681)
* [Next](merchant-reconciliation-report.html#idp264749)
#### Merchant Reconciliation Report
The **Merchant Reconciliation Report** lists all of the transactions for the merchant that were processed and closed.
You can download the current **Merchant Reconciliation Report** version 1.8. See [Downloading a Financial Report](downloading-a-financial-report.html "Downloading a Financial Report")
.
The report is provided in the form of a CSV file. To read it, open it in a spreadsheet.
There are a few different types of Reconciliation reports:
* **Merchant Reconciliation Report** - Lists all transactions processed and closed for the given 24 hour period.
* **Merchant Reconciliation Report Beta** - Same as the Merchant Reconciliation Report, but temporarily released when new fields are released (beta) before they are merged into the main Merchant Reconciliation Report.
* **Merchant Reconciliation by Settlement Report** - Lists all transactions processed and closed but organized by settlement rather than a given time period. See Report Settings to change the reconciliation report type.
* **Monthly Merchant Reconciliation Report** - Monthly overview report of the Merchant Reconciliation Report as described.
### Deducting Fees and Reserve Funds
Rapyd may deduct fees and funds for your reserve balance as funds are collected into your account balance. Fees will always be deducted from the available balance. Collecting funds as they arrive will protect against a negative balance in your account. For more information on the available reserve and receive balance descriptions, refer to [Balances](balances.html "Balances")
.
[##### Transaction Types](#idp264749_body)
The **Merchant Reconciliation Report** provides reconciliation information for the following transaction types:
| Product | Transaction Types |
| --- | --- |
| Collect | Payments, refunds, payment reversals and chargebacks |
| Disburse | Payouts and payout reversals |
| Card Issuing | Issued card transactions |
| Issued Bank Account | Issued bank account deposits |
| Identity Verification | IDV requests |
| Wallet | Wallet to Wallet Transfer |
[##### File Version](#idp264791_body)
Current file format version is _1.8_
[##### Reporting Frequency](#idp264795_body)
Depending on the merchant activity, the report is generated on a daily basis at 2:00 AM UTC.
A consolidated monthly report is also generated, summarizing all transactions **closed** throughout the previous calendar month.
The monthly report is generated at 2:00AM UTC, on the 1st of each month, covering the activity done in the previous calendar month.
[##### File Structure](#idp264801_body)
###### Header Format
Line one the CSV file contains the following information:
| Field | Value |
| --- | --- |
| Report Title | Rapyd Merchant Reconciliation Report |
| Version | Report version number |
| Merchant | Alias of the merchant |
| From | the string "From" |
| Start date | Period start date |
| To | the string "To" |
| End date | Period end date |
[##### Transaction Records](#idp264849_body)
The following table contains the column title of the field, description and value format.
Each line item record in the CSV file contains all details pertaining to a single transaction processed by Rapyd.
[##### Merchant Reconciliation](#idp264853_body)
| | | |
| --- | --- | --- |
| Column | Description | Value Type/Format |
| Transaction Type | Will be set as one of the following for the corresponding transaction(s): payment refund Payment\_reversal Chargeback Payouts payout reversals Issued card transactions Issued bank account deposits IDV requests Wallet to Wallet Transfer | string |
| Rapyd Transaction ID | ID of the transaction on the Rapyd platform. Use this as a reference when contacting our support team | string |
| Rapyd Reference ID | The unique token created when creating the transaction on the Rapyd platform.
**Note**: multiple transactions can share the same token in case payments are split between multiple wallets | string |
| Merchant Reference ID | The unique ID referencing the merchant used when creating the transaction on the Rapyd platform.
This is an optional field and is provided to assist in reconciliation efforts.
**Note**: multiple transactions can share the same reference ID in case payments are split between multiple wallets | string |
| Transaction Method Type | Name of the payment or payout method type used when creating the transaction
Issued Card: The type of hardware type used for deducting funds, i.e. 'vPOS', 'PPOS' or 'ATM'
Empty for virtual accounts or bank accounts | string |
| Country | The country where the funds of the transaction were collected from.
Payout and payout reversal: The country of the beneficiary (where the funds of the payout are sent to).
Issued bank account deposits: The country of the issued accounts.
Issued card transactions: The country where the transaction was processed (location of the POS/ATM)
IDV requests: Country of the IDV contact.
Empty for Wallet to Wallet Transfer. | 2-Letter ISO 3166-2 country code |
| Presentment Currency | The currency of the transaction collected from debtor | Three-letter ISO 4217 code |
| Presentment Amount | The amount collected from the debtor, in presentment currency
Payouts: The currency of the funds being sent to the beneficiary
Virtual Accounts: The currency of the funds deposited into the issued bank account. | decimal
**Note**: amount rounded based on the minor unit defined in ISO 4217 |
| Wallet Account Currency | The currency of the payment collected as credited to the wallet.
For payments created using the Payment with FX API call, this currency will be different from the Presentment Currency Currency | Three-letter ISO 4217 code |
| Wallet Amount | The amount collected from the debtor, credited to the wallet.
For payments created using the Payment with FX API call, this currency will be different from the Presentment Amount | decimal
**Note**: amount rounded based on the minor unit defined in ISO 4217 |
| Destination Wallet Transaction Token | Transaction token on the of the transaction processed on the destination wallet (wt\_xxxxx). | string |
| Destination Wallet | The wallet settlement funds are deducted from. | string |
| Transaction Exchange Rate with Markup | The exchange rate used when using the Payment with FX API call. The rate includes the markup charged by Rapyd (if applicable)
For payments collected without FX, the value will be set to 1. without FX, the value will be set to 1. | decimal |
| Transaction Exchange Rate without Markup | The base exchange rate used when using the Payment with FX API call. The rate does not include the markup charged by Rapyd (if applicable).
For payments collected without FX, the value will be set to 1.
For Issuing, the value is set to null. | decimal |
| Transaction Exchange Fee | The exchange fee charged when using the Payment with FX API call, in denominated in the Wallet Account Currency.
For payments collected without FX, the value will be set to 0. | decimal |
| Wallet Debit/Credit | Defines whether the transaction record resulted in a debit or credit action to the wallet account.
All 'payment' type transactions will perform a 'credit' action. | string |
| Fee Currency | The currency of the fees applied to the transaction, not including the transaction exchange fees charged for the Payment with FX. | Three-letter ISO 4217 code |
| Fee Exchange Rate | The rate applied when the fee currency is different than the presentment currency.
Fees are calculated from the presentment amount and currency. | decimal |
| Transaction Fee | The fee amount for processing the transaction, denominated in Fee Currency. | decimal |
| Fee in Wallet Currency | The fee amount for processing the transaction, denominated in the Wallet Account Currency. | decimal |
| Settlement Currency | The currency of the net amount of the transaction, to be settled. | Three-letter ISO 4217 code |
| Settlement Exchange Rate | The rate applied when the settlement currency is different than the fee and/or presentment currency.
The rate is used to convert from the fee currency to the settlement currency.
The rate includes the markup applied by Rapyd (if applicable). | decimal |
| Settlement Amount | The net amount of the transaction to be settled, denominated in Settlement Currency.
in case withholding tax is applied, this column should present the net settlement amount after withholding tax deduction. | decimal |
| Expected Settlement Date | The expected settlement date of the transaction. | date YYYY-MM-DD |
| Action Created At | The timestamp issued when the transaction was first created via the Rapyd API. | timestamp YYYY-MM-DD HH:mm:ss |
| Action Closed At | The timestamp issued when the transaction was confirmed and closed by the Rapyd system.
Split Payments: Valid for transaction type ‘payment’ only. | timestamp YYYY-MM-DD HH:mm:ss |
| Reserve Amount | The amount transferred to Reserve. The Reserve Amount is calculated based on payments only.
The Reserve Amount will be deducted on the billing date. | decimal |
| Reserve Currency | The Reserve account currency to which funds are transferred as part of the reserve process (when applicable). | Three-letter ISO 4217 code |
| Rapyd Transaction Group ID | The transaction group ID when group payments are used.
Multiple transactions may share the same Transaction Group ID. | string |
| Settlement Wallet | The ewallet token credited with the transaction, and from which the settlement is performed (if applicable). | string |
| Billing Wallet | The ewallet token where fees will be deducted from. | string |
| Wallet actual fee currency deducted | The currency type deducted from the wallet for the transaction. The transaction is listed by Billing ID. | Three-letter ISO 4217 code |
| Wallet actual fee amount deducted | The fee amount deducted from the wallet for the transaction. The transaction is listed by Billing ID. | decimal |
| Transaction wallet | The wallet where the transaction was created, listed by Wallet ID | string |
| Invoice ID | A shared invoice ID for all transactions billed across multiple Merchant Reconciliation Reports. | string |
| Card Brand | The brand of the card used, in case the transaction was created using a card payment method.
In all other cases, the value will be empty for Payments. | string |
| Card Type | The type of the card used, in case the transaction was created using a card payment method.
In all other cases, the value will be empty for Payments. | string |
| Platform Type | Type of card platform (e.g. Commercial, Consumer) | string |
| Transaction Regionality | The identified location of the transaction based on the match between the merchant and the card holder’s countries. | string |
| Issuing Country | The country where the card or bank account was issued.
Empty for other transaction types. | 2-Letter ISO 3166-2 country code |
| Issued Card Token | value is empty for Payments | empty |
| Card Holder Name | The name of the card holder, in case the transaction was created using a card payment method.
In all other cases, the value will be empty for Payments. | string |
| Issued Bank Account Number | The number of the issued bank account, which funds were deposited into.
Value empty for other transaction types. | empty |
| Tax Amount | The amount of the tax for any payment collection transaction. | decimal |
| Tax Currency | The currency of the tax for any payment collection transaction. | Three-letter ISO 4217 code |
| Tax Amount in Fee Currency | The currency of the payment as refunded to the original debtor | decimal |
| Interchange Fee Amount | If interchange fee is applied due to the prediction model, it is stated here in Fee currency. | decimal |
| Scheme Fee Amount | If scheme fee is applied due to the prediction model, it is stated here in Fee currency. | decimal |
| Invoice Currency | The Invoice Currency as set within the price list | Three-letter ISO 4217 code |
| Transaction Exchange Fee in Invoice Currency | The Transaction Exchange Fees denominated in Invoice Currency. | decimal |
| Transaction Fees in Invoice Currency | The Transaction Fees denominated in Invoice Currency. | decimal |
| Sender Name | Name of the sender related to the Virtual IBAN | string |
| Sender Account Name | Account Name/Number of the sender related to the Virtual IBAN | string |
| Sender Remitter Reference | Virtual IBAN related sender remitter reference | string |
| Description | The reason why the transaction fee was manually adjusted. | string |
| Sender Sort Code | Number identifying the bank of the Virtual IBAN | string |
| Beneficiary Name | The name of the beneficiary. | string |
| Withholding Tax Rate | The withholding tax rate, as configured by Rapyd. | decimal |
| Gateway Reference ID (beta) | ID of the gateway on the Rapyd platform. | string |
| Settlement ID | ID of the settlement of the transaction. | string |
| Static Reference ID | Unique ID field added by the merchant for each wallet and bank account configuration.
Should be Alphanumeric. Min 3 characters, max 45 characters.
Once populated and saved can’t be changed. | string |
[##### Merchant Reconciliation Beta](#idp265334_body)
The Merchant Reconciliation Beta report includes all the fields in the current report as well as the newly included fields.
Starting from Line 2 of the CSV file, the information contained follows the below guideline:
| Column | Description | Value Type/Format |
| --- | --- | --- |
| Platform Fee - Count of Items | Values presented (per relevant transaction):
* Wallet Subscription - The number of wallets that were charged
* Inactive VA Fee - The number of Virtual Accounts that were charged
* Multiple VA Fee - The number of Virtual Accounts that were charged | number |
| Platform Fee - Fee Per Item | Values presented (per relevant transaction):
* Wallet Subscription - fee amount per wallet
* Inactive VA Fee - fee amount per Virtual Account
* Multiple VA Fee - fee amount per Virtual Account | decimal |
| Transaction Amount in Settlement Currency | The amount of the transaction in Settlement Currency. | decimal |
| Fee Amount in Settlement Currency | The fee amount for the transaction in Settlement Currency. | decimal |
| Transaction Exchange Fee in Settlement Currency | The exchange fee charged when using a transaction with FX, denominated in the Settlement Currency. | decimal |
| Reserve Amount in Settlement Currency | The amount transferred to Reserve in Settlement Currency. | decimal |
[##### Merchant Reconciliation by Settlement Report](#idp265408_body)
The Merchant Reconciliation by Settlement Report includes all of the fields in the current report and the newly included fields.
Starting from Line 2 of the CSV file, the information contained follows the below guideline:
| | | |
| --- | --- | --- |
| Column | Description | Value Type/Format |
| Transaction Type | Will be set as one of the following for the corresponding transaction(s): payment refund Payment\_reversal Chargeback Payouts payout reversals Issued card transactions Issued bank account deposits IDV requests Wallet to Wallet Transfer | string |
| Rapyd Transaction ID | ID of the transaction on the Rapyd platform. Use this as a reference when contacting our support team | string |
| Rapyd Reference ID | The unique token created when creating the transaction on the Rapyd platform.
**Note**: multiple transactions can share the same token in case payments are split between multiple wallets | string |
| Merchant Reference ID | The unique ID referencing the merchant used when creating the transaction on the Rapyd platform.
This is an optional field and is provided to assist in reconciliation efforts.
**Note**: multiple transactions can share the same reference ID in case payments are split between multiple wallets | string |
| Transaction Method Type | Name of the payment or payout method type used when creating the transaction
Issued Card: The type of hardware type used for deducting funds, i.e. 'vPOS', 'PPOS' or 'ATM'
Empty for virtual accounts or bank accounts | string |
| Country | The country where the funds of the transaction were collected from.
Payout and payout reversal: The country of the beneficiary (where the funds of the payout are sent to).
Issued bank account deposits: The country of the issued accounts.
Issued card transactions: The country where the transaction was processed (location of the POS/ATM)
IDV requests: Country of the IDV contact.
Empty for Wallet to Wallet Transfer. | 2-Letter ISO 3166-2 country code |
| Presentment Currency | The currency of the transaction collected from debtor | Three-letter ISO 4217 code |
| Presentment Amount | The amount collected from the debtor, in presentment currency
Payouts: The currency of the funds being sent to the beneficiary
Virtual Accounts: The currency of the funds deposited into the issued bank account. | decimal
**Note**: amount rounded based on the minor unit defined in ISO 4217 |
| Wallet Account Currency | The currency of the payment collected as credited to the wallet.
For payments created using the Payment with FX API call, this currency will be different from the Presentment Currency Currency | Three-letter ISO 4217 code |
| Wallet Amount | The amount collected from the debtor, credited to the wallet.
For payments created using the Payment with FX API call, this currency will be different from the Presentment Amount | decimal
**Note**: amount rounded based on the minor unit defined in ISO 4217 |
| Destination Wallet Transaction Token | Transaction token on the of the transaction processed on the destination wallet (wt\_xxxxx). | string |
| Destination Wallet | The wallet settlement funds are deducted from. | string |
| Transaction Exchange Rate with Markup | The exchange rate used when using the Payment with FX API call. The rate includes the markup charged by Rapyd (if applicable)
For payments collected without FX, the value will be set to 1. without FX, the value will be set to 1. | decimal |
| Transaction Exchange Rate without Markup | The base exchange rate used when using the Payment with FX API call. The rate does not include the markup charged by Rapyd (if applicable).
For payments collected without FX, the value will be set to 1.
For Issuing, the value is set to null. | decimal |
| Transaction Exchange Fee | The exchange fee charged when using the Payment with FX API call, in denominated in the Wallet Account Currency.
For payments collected without FX, the value will be set to 0. | decimal |
| Wallet Debit/Credit | Defines whether the transaction record resulted in a debit or credit action to the wallet account.
All 'payment' type transactions will perform a 'credit' action. | string |
| Fee Currency | The currency of the fees applied to the transaction, not including the transaction exchange fees charged for the Payment with FX. | Three-letter ISO 4217 code |
| Fee Exchange Rate | The rate applied when the fee currency is different than the presentment currency.
Fees are calculated from the presentment amount and currency. | decimal |
| Transaction Fee | The fee amount for processing the transaction, denominated in Fee Currency. | decimal |
| Fee in Wallet Currency | The fee amount for processing the transaction, denominated in the Wallet Account Currency. | decimal |
| Settlement Currency | The currency of the net amount of the transaction, to be settled. | Three-letter ISO 4217 code |
| Settlement Exchange Rate | The rate applied when the settlement currency is different than the fee and/or presentment currency.
The rate is used to convert from the fee currency to the settlement currency.
The rate includes the markup applied by Rapyd (if applicable). | decimal |
| Settlement Amount | The net amount of the transaction to be settled, denominated in Settlement Currency.
in case withholding tax is applied, this column should present the net settlement amount after withholding tax deduction. | decimal |
| Expected Settlement Date | The expected settlement date of the transaction. | date YYYY-MM-DD |
| Action Created At | The timestamp issued when the transaction was first created via the Rapyd API. | timestamp YYYY-MM-DD HH:mm:ss |
| Action Closed At | The timestamp issued when the transaction was confirmed and closed by the Rapyd system.
Split Payments: Valid for transaction type ‘payment’ only. | timestamp YYYY-MM-DD HH:mm:ss |
| Reserve Amount | The amount transferred to Reserve. The Reserve Amount is calculated based on payments only.
The Reserve Amount will be deducted on the billing date. | decimal |
| Reserve Currency | The Reserve account currency to which funds are transferred as part of the reserve process (when applicable). | Three-letter ISO 4217 code |
| Rapyd Transaction Group ID | The transaction group ID when group payments are used.
Multiple transactions may share the same Transaction Group ID. | string |
| Settlement Wallet | The ewallet token credited with the transaction, and from which the settlement is performed (if applicable). | string |
| Billing Wallet | The ewallet token where fees will be deducted from. | string |
| Wallet actual fee currency deducted | The currency type deducted from the wallet for the transaction. The transaction is listed by Billing ID. | Three-letter ISO 4217 code |
| Wallet actual fee amount deducted | The fee amount deducted from the wallet for the transaction. The transaction is listed by Billing ID. | decimal |
| Transaction wallet | The wallet where the transaction was created, listed by Wallet ID | string |
| Invoice ID | A shared invoice ID for all transactions billed across multiple Merchant Reconciliation Reports. | string |
| Card Brand | The brand of the card used, in case the transaction was created using a card payment method.
In all other cases, the value will be empty for Payments. | string |
| Card Type | The type of the card used, in case the transaction was created using a card payment method.
In all other cases, the value will be empty for Payments. | string |
| Platform Type | Type of card platform (e.g. Commercial, Consumer) | string |
| Transaction Regionality | The identified location of the transaction based on the match between the merchant and the card holder’s countries. | string |
| Issuing Country | The country where the card or bank account was issued.
Empty for other transaction types. | 2-Letter ISO 3166-2 country code |
| Issued Card Token | value is empty for Payments | empty |
| Card Holder Name | The name of the card holder, in case the transaction was created using a card payment method.
In all other cases, the value will be empty for Payments. | string |
| Issued Bank Account Number | The number of the issued bank account, which funds were deposited into.
Value empty for other transaction types. | empty |
| Tax Amount | The amount of the tax for any payment collection transaction. | decimal |
| Tax Currency | The currency of the tax for any payment collection transaction. | Three-letter ISO 4217 code |
| Tax Amount in Fee Currency | The currency of the payment as refunded to the original debtor | decimal |
| Interchange Fee Amount | If interchange fee is applied due to the prediction model, it is stated here in Fee currency. | decimal |
| Scheme Fee Amount | If scheme fee is applied due to the prediction model, it is stated here in Fee currency. | decimal |
| Invoice Currency | The Invoice Currency as set within the price list | Three-letter ISO 4217 code |
| Transaction Exchange Fee in Invoice Currency | The Transaction Exchange Fees denominated in Invoice Currency. | decimal |
| Transaction Fees in Invoice Currency | The Transaction Fees denominated in Invoice Currency. | decimal |
| Sender Name | Name of the sender related to the Virtual IBAN | string |
| Sender Account Name | Account Name/Number of the sender related to the Virtual IBAN | string |
| Sender Remitter Reference | Virtual IBAN related sender remitter reference | string |
| Description | The reason why the transaction fee was manually adjusted. | string |
| Sender Sort Code | Number identifying the bank of the Virtual IBAN | string |
| Beneficiary Name | The name of the beneficiary. | string |
| Withholding Tax Rate | The withholding tax rate, as configured by Rapyd. | decimal |
| Gateway Reference ID (beta) | ID of the gateway on the Rapyd platform. | string |
| Settlement ID | ID of the settlement of the transaction. | string |
| Static Reference ID | Unique ID field added by the merchant for each wallet and bank account configuration.
Should be Alphanumeric. Min 3 characters, max 45 characters.
Once populated and saved can’t be changed. | string |
| Transaction Amount in Settlement Currency | The amount of the transaction in Settlement Currency. | decimal |
| Fee Amount in Settlement Currency | The fee amount for the transaction in Settlement Currency. | decimal |
| Transaction Exchange Fee in Settlement Currency | The exchange fee charged when using a transaction with FX, denominated in the Settlement Currency. | decimal |
| Reserve Amount in Settlement Currency | The amount transferred to Reserve in Settlement Currency. | decimal |
##### Sample Report
**Merchant Reconciliation Report**
Merchant Reconciliation Report Beta,v1.7,KilbackNikolaus,From,2022/06/19,To,2022/06/20
Transaction Type,Rapyd Transaction ID,Rapyd Reference ID,Merchant Reference ID,Transaction Method Type,Country,Presentment Currency,Presentment Amount,Wallet Account Currency,Wallet Amount,Transaction Exchange Rate with Markup,Transaction Exchange Rate without Markup,Transaction Exchange Fee,Wallet Debit/Credit,Fee Currency,Fee Exchange Rate,Transaction Fees,Fees In Wallet Currency,Settlement Currency,Settlement Exchange Rate,Settlement Amount,Expected Settlement Date,Action Created At,Action Closed At,Rapyd Transaction Group ID,Destination Wallet,Billing Wallet,Invoice ID,Card Brand,Card Type,Issuing Country,Issued Card Token,Card Holder Name,Issued Bank Account Number,Tax Amount,Tax Currency,Tax Amount in Fee Currency,Interchange Fee Amount,Scheme Fee Amount,Source Wallet,Invoice Currency,Transaction Exchange Fee in Invoice Currency,Transaction Fees in Invoice Currency,Sender Name,Sender Account Name,Sender Remitter Reference,Sender Sort Code
payment,ec6ae6c3-4869-48af-a4ac-650444019e1a,payment\_5cc931a5e5af57caa6b93895cd1cc359,payment\_5cc931a5e5af57caa6b93895cd1cc359,at\_visa\_card,AT,USD,4.00000,USD,4.00000,1,1,,credit,USD,1.00000000,5.08,5.08,USD,1,-1.08,2022-06-20 00:00:00,2022-06-19 11:25:59,2022-06-19 11:25:59,,,ewallet\_be4ba8f13da40caa59a7e03022a8acfe,fee1a72be022cecd1c4b7b222d2f777f,,,,,,,,,,0.00,0.00,,USD,,5.08,,,,
payment,38bc824c-8b66-471a-8a87-c7c2f89a2b3b,payment\_e9e51372b49184523345af3235d6cbd0,payment\_e9e51372b49184523345af3235d6cbd0,at\_visa\_card,AT,USD,4.00000,USD,4.00000,1,1,,credit,USD,1.00000000,5.08,5.08,USD,1,-1.08,2022-06-20 00:00:00,2022-06-19 11:42:48,2022-06-19 11:42:48,,,ewallet\_be4ba8f13da40caa59a7e03022a8acfe,fee1a72be022cecd1c4b7b222d2f777f,,,,,,,,,,0.00,0.00,,USD,,5.08,,,,
payment,994ad99a-f6be-46d4-bff1-7b0752688a27,payment\_9271a2f554badadb894f4b4a50fbf141,payment\_9271a2f554badadb894f4b4a50fbf141,at\_visa\_card,AT,USD,4.00000,USD,4.00000,1,1,,credit,USD,1.00000000,5.08,5.08,USD,1,-1.08,2022-06-20 00:00:00,2022-06-19 12:22:13,2022-06-19 12:22:13,,,ewallet\_be4ba8f13da40caa59a7e03022a8acfe,fee1a72be022cecd1c4b7b222d2f777f,,,,,,,,,,0.00,0.00,,USD,,5.08,,,,
chargeback,37f486a0-0e82-4a06-aaf3-da735cc3ad1c,dispute\_609d189f5e78e33a6812490c57d90178,payment\_9271a2f554badadb894f4b4a50fbf141,at\_visa\_card,AT,,,USD,4.00000,1,1,,debit,USD,1.00000000,15.00,15.00,GBP,0.81783000,15.54,2022-06-20 00:00:00,2022-06-19 12:22:31,2022-06-19 12:22:31,,,ewallet\_be4ba8f13da40caa59a7e03022a8acfe,fee1a72be022cecd1c4b7b222d2f777f,,,,,,,,,,0.00,0.00,,USD,,15.00,,,,
payment,c7af4f6a-b506-4505-b9ac-002d098f5ca5,payment\_0f9bd9007ba773579c020c36d259211f,payment\_0f9bd9007ba773579c020c36d259211f,at\_visa\_card,AT,USD,4.00000,USD,4.00000,1,1,,credit,USD,1.00000000,5.08,5.08,USD,1,-1.08,2022-06-20 00:00:00,2022-06-19 12:25:01,2022-06-19 12:25:01,,,ewallet\_be4ba8f13da40caa59a7e03022a8acfe,fee1a72be022cecd1c4b7b222d2f777f,,,,,,,,,,0.00,0.00,,USD,,5.08,,,,
chargeback,84507cf6-8bf4-4c2e-a3c3-aaed6867e4bd,dispute\_09b775a6014d132cdda3db686d2cb28a,payment\_0f9bd9007ba773579c020c36d259211f,at\_visa\_card,AT,,,USD,4.00000,1,1,,debit,USD,1.00000000,15.00,15.00,GBP,0.81783000,15.54,2022-06-20 00:00:00,2022-06-19 12:25:09,2022-06-19 12:25:09,,,ewallet\_be4ba8f13da40caa59a7e03022a8acfe,fee1a72be022cecd1c4b7b222d2f777f,,,,,,,,,,0.00,0.00,,USD,,15.00,,,,
payment,4f72531c-bec5-4518-87e1-0d492ed74c3d,payment\_42be58d25b68d2ae95e0016cec7afe91,payment\_42be58d25b68d2ae95e0016cec7afe91,at\_visa\_card,AT,USD,4.00000,USD,4.00000,1,1,,credit,USD,1.00000000,5.08,5.08,USD,1,-1.08,2022-06-20 00:00:00,2022-06-19 14:08:43,2022-06-19 14:08:43,,,ewallet\_be4ba8f13da40caa59a7e03022a8acfe,fee1a72be022cecd1c4b7b222d2f777f,,,,,,,,,,0.00,0.00,,USD,,5.08,,,,
chargeback,8d8f6f5d-5f4f-4dbb-8d6a-8140fa6403fc,dispute\_bd243b986542af4b2dac39bb02703dad,payment\_42be58d25b68d2ae95e0016cec7afe91,at\_visa\_card,AT,,,USD,2.00000,1,1,,debit,USD,1.00000000,15.00,15.00,GBP,0.81783000,13.91,2022-06-20 00:00:00,2022-06-19 14:18:24,2022-06-19 14:18:24,,,ewallet\_be4ba8f13da40caa59a7e03022a8acfe,fee1a72be022cecd1c4b7b222d2f777f,,,,,,,,,,0.00,0.00,,USD,,15.00,,,,
payment,9279ca24-303b-4f7b-b16e-50b3a504d9eb,payment\_10ae634970313f25e498cdce12e22da0,payment\_10ae634970313f25e498cdce12e22da0,at\_visa\_card,AT,USD,4.00000,USD,4.00000,1,1,,credit,USD,1.00000000,5.08,5.08,USD,1,-1.08,2022-06-20 00:00:00,2022-06-19 14:19:29,2022-06-19 14:19:29,,,ewallet\_be4ba8f13da40caa59a7e03022a8acfe,fee1a72be022cecd1c4b7b222d2f777f,,,,,,,,,,0.00,0.00,,USD,,5.08,,,,
chargeback,d9c6fcc9-1d7d-4115-a519-0a721cf120f4,dispute\_ea53f12375dda05014b1c00c36dc8764,payment\_10ae634970313f25e498cdce12e22da0,at\_visa\_card,AT,,,USD,2.00000,1,1,,debit,USD,1.00000000,15.00,15.00,GBP,0.81783000,13.91,2022-06-20 00:00:00,2022-06-19 14:19:37,2022-06-19 14:19:37,,,ewallet\_be4ba8f13da40caa59a7e03022a8acfe,fee1a72be022cecd1c4b7b222d2f777f,,,,,,,,,,0.00,0.00,,USD,,15.00,,,,
payment,ec6379f4-5a85-4993-8bd5-dda7cbb707e5,payment\_e243e1be8f60a7635b3071a29fb304e1,payment\_e243e1be8f60a7635b3071a29fb304e1,at\_visa\_card,AT,USD,4.00000,USD,4.00000,1,1,,credit,USD,1.00000000,5.08,5.08,USD,1,-1.08,2022-06-20 00:00:00,2022-06-19 14:21:25,2022-06-19 14:21:25,,,ewallet\_be4ba8f13da40caa59a7e03022a8acfe,fee1a72be022cecd1c4b7b222d2f777f,,,,,,,,,,0.00,0.00,,USD,,5.08,,,,
chargeback,2512fb5e-be3b-4321-9a9c-6dd7c27d1e8c,dispute\_c78441ace618ddb5c778d8d578feaa6f,payment\_e243e1be8f60a7635b3071a29fb304e1,at\_visa\_card,AT,,,USD,2.00000,1,1,,debit,USD,1.00000000,15.00,15.00,GBP,0.81783000,13.91,2022-06-20 00:00:00,2022-06-19 14:21:32,2022-06-19 14:21:32,,,ewallet\_be4ba8f13da40caa59a7e03022a8acfe,fee1a72be022cecd1c4b7b222d2f777f,,,,,,,,,,0.00,0.00,,USD,,15.00,,,,
payment,42cbd33f-1be1-4ebd-9493-0b92a6f54151,payment\_c290f22c3b0f792991328f4805869efa,payment\_c290f22c3b0f792991328f4805869efa,at\_visa\_card,AT,USD,40.00000,USD,40.00000,1,1,,credit,USD,1.00000000,5.80,5.80,USD,1,34.20,2022-06-20 00:00:00,2022-06-19 14:24:41,2022-06-19 14:24:41,,,ewallet\_be4ba8f13da40caa59a7e03022a8acfe,fee1a72be022cecd1c4b7b222d2f777f,,,,,,,,,,0.00,0.00,,USD,,5.80,,,,
chargeback,6131e73a-1520-4ed4-908b-084a96842b87,dispute\_233495e3d14787b65635c60b4dd8f374,payment\_c290f22c3b0f792991328f4805869efa,at\_visa\_card,AT,,,USD,2.00000,1,1,,debit,USD,1.00000000,15.00,15.00,GBP,0.81783000,13.91,2022-06-20 00:00:00,2022-06-19 14:28:19,2022-06-19 14:28:19,,,ewallet\_be4ba8f13da40caa59a7e03022a8acfe,fee1a72be022cecd1c4b7b222d2f777f,,,,,,,,,,0.00,0.00,,USD,,15.00,,,,
chargeback,8c177c69-11c0-42ee-8b2a-dd49a9530092,dispute\_8b750cc9738510fe868939ee5997874c,payment\_c290f22c3b0f792991328f4805869efa,at\_visa\_card,AT,,,USD,2.00000,1,1,,debit,USD,1.00000000,15.00,15.00,GBP,0.81783000,13.91,2022-06-20 00:00:00,2022-06-19 14:28:53,2022-06-19 14:28:53,,,ewallet\_be4ba8f13da40caa59a7e03022a8acfe,fee1a72be022cecd1c4b7b222d2f777f,,,,,,,,,,0.00,0.00,,USD,,15.00,,,,
chargeback,f33777d2-eeca-401b-9ecb-8c4fe8076c54,dispute\_741da11783eabe6b5d4607353c3e3494,payment\_c290f22c3b0f792991328f4805869efa,at\_visa\_card,AT,,,USD,2.00000,1,1,,debit,USD,1.00000000,15.00,15.00,GBP,0.81783000,13.91,2022-06-20 00:00:00,2022-06-19 14:29:12,2022-06-19 14:29:12,,,ewallet\_be4ba8f13da40caa59a7e03022a8acfe,fee1a72be022cecd1c4b7b222d2f777f,,,,,,,,,,0.00,0.00,,USD,,15.00,,,,
chargeback,e5d19e17-2722-42b4-88eb-23110a574ebd,dispute\_06dd0fd96b7abc12abad31c57ad52087,payment\_c290f22c3b0f792991328f4805869efa,at\_visa\_card,AT,,,USD,2.00000,1,1,,debit,USD,1.00000000,15.00,15.00,GBP,0.81783000,13.91,2022-06-20 00:00:00,2022-06-19 14:30:58,2022-06-19 14:30:58,,,ewallet\_be4ba8f13da40caa59a7e03022a8acfe,fee1a72be022cecd1c4b7b222d2f777f,,,,,,,,,,0.00,0.00,,USD,,15.00,,,,
payment,cd2320ec-de78-4c6d-8777-2a4e38fda49f,payment\_c40d584810259df99d7c1d81c8c082c1,payment\_c40d584810259df99d7c1d81c8c082c1,at\_visa\_card,AT,USD,40.00000,USD,40.00000,1,1,,credit,USD,1.00000000,5.80,5.80,USD,1,34.20,2022-06-20 00:00:00,2022-06-19 14:33:01,2022-06-19 14:33:01,,,ewallet\_be4ba8f13da40caa59a7e03022a8acfe,fee1a72be022cecd1c4b7b222d2f777f,,,,,,,,,,0.00,0.00,,USD,,5.80,,,,
In this section:
Search results
--------------
No results found
* [Prev](failed-payments-report.html#idp264681)
* [Next](merchant-reconciliation-report.html#idp264749)
---
# Update Product
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [API Reference](api-reference.html)
* [Rapyd Collect](rapyd-collect-363484.html)
* [Subscription](subscription.html)
* [Product](product.html)
* Update Product
* [Prev](create-product.html)
* [Next](list-products.html)
###### Update Product
Change or modify a product or service.
This method triggers the **Product Updated** webhook. This webhook contains the same information as the response.
[###### Parameters](#idp299090_body)
[###### Request Path Parameters](#idp299092_body)
* * product
* ID of the product.
[###### Request Header Parameters](#idp299101_body)
[###### Request Body Parameters](#idp299161_body)
* * active
* Indicates whether the product is currently available for purchase.
true
* * attributes
* Array of up to 5 alphanumeric strings defined by the merchant. Each string defines the key in a key-value pair in the `attributes` object in the corresponding `sku` objects.
* * name
* The name of the product or service that is displayed to the customer.
* * package\_dimensions
* Describes the physical size and weight of the product. Relevant when `type` is **goods**. Contains the following fields:
* `height`
* `length`
* `weight`
* `width`
These fields are represented as numbers, but it is the responsibility of the merchant to define and interpret the relevant units of length and weight.
* * statement\_descriptor
* A text description that appears in the customer's invoice. Limited to 22 characters. Relevant when `type` is **service**.
* * unit\_label
* A label that represents units of this product, such as seats, on customers’ invoices. Relevant when `type` is **service**.
[###### Response Parameters](#idp299231_body)
###### Code Samples
* * .NET
* using System;
using System.Text.Json;
namespace RapydApiRequestSample
{
class Program
{
static void Main(string\[\] args)
{
try
{
string product = "product\_0d9dc6be69c769560fe913f3b086d8ca";
var metadata = new
{
merchant\_defined = true
};
string attributes = new string\[\] { "color", "armrest", "cover" };
var package\_dimensions = new Object\[\]
{
new { height = 10 },
new { length = 20 },
new { weight = 100 },
new { width = 40 },
};
string result = RapydApiRequestSample.Utilities.MakeRequest("POST", $"/v1/products/{product}", request);
Console.WriteLine(result);
}
catch (Exception e)
{
Console.WriteLine("Error completing request: " + e.Message);
}
}
}
}
* * JavaScript
* const makeRequest = require('
/utilities').makeRequest;
async function main() {
try {
const body = {
name: 'Gamers Red Chair'
};
const result = await makeRequest(
'POST',
'/v1/products/product\_5d11e30104e3b802c44a08a434aef729',
body
);
console.log(result);
} catch (error) {
console.error('Error completing request', error);
}
}
* * PHP
* /utilities.php";
include($path);
$body = \[\
"name" => "Gamer's Red Chair",\
"statement\_descriptor" => "",\
\];
try {
$object = make\_request('post', '/v1/products/product\_cc7ca57655ce8bc3149d318662b3b8bd', $body);
var\_dump($object);
} catch(Exception $e) {
echo "Error: $e";
}
?>
* * Python
* from pprint import pprint
from utilities import make\_request
product = {
"name": "Gamer's Red Chair",
"attributes": \[\
"color",\
"armrest",\
"cover"\
\],
"metadata": {
"merchant\_defined": True
},
"package\_dimensions": {
"height": 10,
"length": 20,
"weight": 100,
"width": 40
}
}
result = make\_request(method='post', path='/v1/products/product\_0d9dc6be69c769560fe913f3b086d8ca', body=product)
pprint(result)
* /v1/products/:product
* Update Product
* curl -X post
https://sandboxapi.rapyd.net/v1/products/product\_0d9dc6be69c769560fe913f3b086d8ca
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
-d '{
"name": "Gamer's Red Chair",
"attributes": \[\
"color",\
"armrest",\
"cover"\
\],
"metadata": {
"merchant\_defined": true
},
"package\_dimensions": {
"height": 10,
"length": 20,
"weight": 100,
"width": 40
},
"statement\_descriptor": "",
"unit\_label": ""
}
'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "039ee3bd-48c9-43ec-8706-6578962f14bb"
},
"data": {
"id": "product\_0d9dc6be69c769560fe913f3b086d8ca",
"active": true,
"attributes": \[\
"armrest",\
"color",\
"cover"\
\],
"created\_at": 1592299157,
"description": "The ultimate in comfort for the dedicated gamer.",
"metadata": {
"merchant\_defined": true
},
"name": "Gamer's Red Chair",
"package\_dimensions": {
"height": 10,
"length": 20,
"weight": 100,
"width": 40
},
"shippable": true,
"skus": \[\],
"statement\_descriptor": "",
"type": "goods",
"unit\_label": "",
"updated\_at": 1592300812
}
In this section:
The number of seconds elapsed since the beginning of the Unix epoch, which was 00:00:00 GMT on January 1, 1970. 10-digit integer.
Search results
--------------
No results found
* [Prev](create-product.html)
* [Next](list-products.html)
---
# Subscription Unpaid Webhook
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [API Reference](api-reference.html)
* [Rapyd Collect](rapyd-collect-363484.html)
* [Subscription](subscription.html)
* [Subscription Webhooks](subscription-webhooks.html)
* Subscription Unpaid Webhook
* [Prev](subscription-past-due-webhook.html)
* [Next](subscription-updated-webhook.html)
###### Subscription Unpaid Webhook
The **CUSTOMER\_SUBSCRIPTION\_UNPAID** webhook is sent when an error occurs in the payment for a subscription.
[###### Parameters](#idp316915_body)
[###### Webhook Header Parameters](#idp316917_body)
[###### Webhook Root Parameters](#idp316957_body)
[###### Webhook Data Parameters](#idp317030_body)
* CUSTOMER\_SUBSCRIPTION\_UNPAID Webhook
* {
"id": "wh\_d55dc29e1bbcdced4ca961570e69e8bc",
"type": "CUSTOMER\_SUBSCRIPTION\_UNPAID",
"data": {
"id": "sub\_af19b8191b2a481d3d37990be60c2e11",
"type": "payment",
"status": "unpaid",
"billing": "pay\_automatically",
"discount": null,
"ended\_at": null,
"metadata": {},
"trial\_end": null,
"created\_at": 1641822647,
"canceled\_at": null,
"tax\_percent": 0,
"trial\_start": null,
"payout\_fields": null,
"customer\_token": "cus\_d3ed65d5091a8398cc3651bcedec1201",
"days\_until\_due": null,
"payment\_fields": null,
"payment\_method": "card\_85264b18bc1bfb949dbb2d88d3d5c12c",
"current\_period\_end": 1642081847,
"subscription\_items": null,
"billing\_cycle\_anchor": 1641909047,
"cancel\_at\_period\_end": false,
"current\_period\_start": 1641995447
},
"trigger\_operation\_id": "bbc72b69-f8e0-48c2-be27-83d402d92d55",
"status": "NEW",
"created\_at": 1641946884,
"extended\_timestamp": 1641946884848
}
In this section:
The number of seconds elapsed since the beginning of the Unix epoch, which was 00:00:00 GMT on January 1, 1970. 10-digit integer.
Search results
--------------
No results found
* [Prev](subscription-past-due-webhook.html)
* [Next](subscription-updated-webhook.html)
---
# Subscription - Hosted Page
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [API Reference](api-reference.html)
* [Rapyd Collect](rapyd-collect-363484.html)
* [Subscription](subscription.html)
* Subscription - Hosted Page
* [Prev](subscription-errors.html)
* [Next](create-subscription-by-hosted-page.html)
##### Subscription - Hosted Page
Defines a customer-facing page for creating periodic payments.
The subscription hosted page collects personal identifying information (PII) from the customer and creates a subscription that charges the customer periodically.
### Note
* A customer can have more than one subscription.
* Subscriptions support card payment method types.
* For a subscription with a fixed number of billing periods, such as for an installment sale, you must use [Update Subscription](update-subscription.html "Update Subscription")
during the last billing period and set `cancel_at_period_end` to **true**.
When the customer submits the hosted page, Rapyd sends the client one or more webhooks.
**Prerequisites**
* A product of type **service**. See [Create Product](create-product.html "Create Product")
.
* An active plan. See [Create Plan](create-plan.html "Create Plan")
.
Methods
* [Create Subscription by Hosted Page](create-subscription-by-hosted-page.html "Create Subscription by Hosted Page")
In this section:
Search results
--------------
No results found
* [Prev](subscription-errors.html)
* [Next](create-subscription-by-hosted-page.html)
---
# Activating Your Account (KYB)
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Product Guide](product-guide.html)
* Activating Your Account (KYB)
* [Prev](rapyd-platforms.html#idp215979)
* [Next](activating-your-account--kyb-.html#idp215998)
### Activating Your Account (KYB)
Fully activate your account and fulfill `Know Your Business` requirements.
#### Activate Your Account and Remove Limitations
To fully open your account you will need to complete Rapyd’s [KYB](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_kyb "Know Your Business")
(Know Your Business) process. Once your KYB questionnaire is submitted and approved you will be able remove account limits, collect payments and utilize additional Rapyd Products.
In order to speed up getting your account fully activated, follow these steps:
##### Step 1: Start Building Out Your Integration to Safely Test It in the Sandbox
Make sure to get your test API keys in the [Client Portal](client-portal-guide.html "Client Portal Guide")
. You can toggle your Client Portal to [sandbox](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_sandbox "Sandbox")
mode to view your test data.
##### Step 2: Complete Your KYB Application
1. Sign in to the Client Portal as described in [Signing in to the Client Portal](signing-in-to-the-client-portal.html "Signing In to the Client Portal")
.
2. The **Get started** page appears.

3. Click the **Verify my account** button to start your KYB application.
4. The KYB Application page appears.

5. Complete the following required fields:
* Country
* Business Type
* Industry
* Sell Type

6. Click **Start Application**.
7. The **Business Details** page appears. Provide information about your business, which is required for compliance with regulatory and business requirements.

8. Complete the required fields.
9. After filling the required fields, click on the Company Details link in the left menu.

10. The **Company Details** page appears. Provide information about your company.

11. Complete the required fields.
12. You can upload supporting documentation at the bottom by clicking the **+** button.

13. After filling the required fields, click on the Authorized User link in the left menu.

14. The **Authorized User** page appears. Provide personal details about the Account Owner.

15. Complete the required fields.
16. After completing the required fields, click on the Beneficial Owners link in the left menu.

17. The **Beneficial Owners** page appears. Provide the personal details of individuals who hold 25% or more of the company shares.

18. Complete the required fields.
19. (Optional) - You can click the **Authorized User** checkbox at the top of the page if the Beneficial Owner is the same person as the Authorized User.
20. (Optional) - If there are no beneficial owners for your company, select the **No** option at the top of the form. A window will appear asking you to confirm. Click **Confirm**.

21. (Optional) If there are multiple beneficial owners, add additional beneficial owners in the left menu.

22. Complete the required fields for the Beneficial Owner page if applicable.
23. Click the **Submit** button at the bottom of the form.

24. Confirm you are ready to submit the application and complete the reCAPTCHA.

25. Click **Submit**.

26. The application submission screen appears, listing your application status.

27. Click **View Application** to view your KYB application details.

28. Check your KYB application status by navigating to the **Get Started** page.

##### Step 3: A Compliance Specialist Will Begin To Look at Your Application
To complete business verification and verify bank account ownership your account will go into review. Depending on your country, it can take up to 30 days to approve your application before your account can be activated. If the compliance specialist is missing information and needs additional details to get your account approved they will reach out to you.
Follow Up with Rapyd Support
The KYB approval process may take up to 30 days before your application is approved and your account can be activated.
If you have not received a response from Rapyd within 30 days, please open a ticket through [Rapyd Support](https://support.rapyd.net)
. See [Creating a Customer Support Ticket](creating-a-customer-support-ticket.html "Creating a Customer Support Ticket")
for more details on creating a support ticket.
### Before Activating Your Account
Check this [list](https://www.rapyd.net/security-compliance/restricted-businesses/)
to confirm that you are eligible to apply for a Rapyd account.
#### KYB FAQs
**What documents do I need to provide to complete KYB and fully activate my account?**
The required documents will vary from country to country and by the requested services. You might be asked to provide documents such as articles of incorporation, organizational structure, proof of address, etc.
**Once I complete the KYB, how long is the waiting period until I am approved?**
Our compliance review and approval can take up to 30 days. You need to wait until your account receives KYB approval before collecting payments from customers.
**How can I change my questionnaire after it has been submitted?**
Once you submit your application you may see your information, but it won’t be possible to make any changes to it.
In this section:
The process of verifying the identity of a business customer.
In Rapyd, the sandbox environment provides most of the functionality of the production environment, without using real money. Interested persons can use the sandbox to explore Rapyd's product offering or to test software integrations with Rapyd's API.
Search results
--------------
No results found
* [Prev](rapyd-platforms.html#idp215979)
* [Next](activating-your-account--kyb-.html#idp215998)
---
# Create SKU
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [API Reference](api-reference.html)
* [Rapyd Collect](rapyd-collect-363484.html)
* [SKU](sku.html)
* Create SKU
* [Prev](sku.html)
* [Next](create-sku.html#idp343803)
##### Create SKU
Create an SKU and attach it to a product.
Relevant to products where `type` is **goods**. You can attach several SKUs to a single product.
This method triggers the **SKU Created** webhook. This webhook contains the same information as the response.
### Note
If the product defined an array of `attributes`, then you must include an `attributes` object that assigns values to those attributes, as in the example below.
[###### Parameters](#idp343807_body)
[###### Request Header Parameters](#idp343809_body)
[###### Request Body Parameters](#idp343869_body)
* * active
* Indicates whether the product is currently available for purchase.
false
* * currency
* Three-letter ISO 4217 code for the currency used in the `price` parameter.
* * id
* ID of the `sku` object. Alphanumeric characters and underscores (\_). If the client does not provide this value, Rapyd creates a string starting with **sku\_**.
* * image
* URL of image associated with the product.
* * inventory
* Describes the items packaged together as a SKU item.
* * price
* The amount of the price. Decimal.
* * product
* ID of the product that this SKU relates to. The `type` field of the product must be set to **goods**.
[###### Response Parameters](#idp344015_body)
###### Code Samples
* * .NET
* using System;
using System.Text.Json;
namespace RapydApiRequestSample
{
class Program
{
static void Main(string\[\] args)
{
try
{
var attributes = new
{
color = "green"
};
var inventory = new
{
quantity = 1,
type = "finite",
value = 600,
};
var metadata = new
{
merchant\_defined = true
};
var package\_dimensions = new
{
length = 2,
height = 1,
weight = 3,
width = 4,
};
var requestObj = new
{
id = "",
active = true,
attributes,
currency = "USD",
image = (string) null,
inventory,
metadata,
package\_dimensions,
price = 600,
product = "product\_f383d03c34fb499eb3ada4e3c574002a",
};
string request = JsonSerializer.Serialize(requestObj);
string result = RapydApiRequestSample.Utilities.MakeRequest("POST", "/v1/skus", request);
Console.WriteLine(result);
}
catch (Exception e)
{
Console.WriteLine("Error completing request: " + e.Message);
}
}
}
}
* * JavaScript
* const makeRequest = require('/utilities').makeRequest;
async function main() {
try {
const body = {
id: '',
active: true,
attributes: {
color: 'green'
},
currency: 'USD',
image: null,
inventory: {
quantity: 1,
type: 'finite',
value: 600
},
metadata: {
merchant\_defined: 'true'
},
package\_dimensions: {
length: 2,
height: 1,
weight: 3,
width: 4
},
price: 600,
product: 'product\_f383d03c34fb499eb3ada4e3c574002a'
};
const result = await makeRequest('POST', '/v1/skus', body);
console.log(result);
} catch (error) {
console.error('Error completing request', error);
}
}
* * PHP
* /utilities.php";
include($path);
// Message body:
//{
// "product": "product\_f383d03c34fb499eb3ada4e3c574002a",
// "price":600,
// "inventory": {
// "quantity": 1,
// "type": "finite",
// "value": 600
// }
//}
$body = \[\
"product" => "product\_f383d03c34fb499eb3ada4e3c574002a",\
"price" => 600,\
"inventory" => array(\
"quantity" => 1,\
"type" => "finite",\
"value" => 600\
)\
\];
try {
$object = make\_request('post', '/v1/skus', $body);
var\_dump($object);
} catch(Exception $e) {
echo "Error: $e";
}
?>
* * Python
* from pprint import pprint
from utilities import make\_request
sku = {
"active": True,
"attributes": {
"color": "green"
},
"currency": "USD",
"inventory": {
"quantity": 1,
"type": "finite",
"value": 600
},
"metadata": {
"merchant\_defined": True
},
"package\_dimensions": {
"length": 2,
"height": 1,
"weight": 3,
"width": 4
},
"price": 600,
"product": "product\_f383d03c34fb499eb3ada4e3c574002a"
}
result = make\_request(method='post', path='/v1/skus', body=sku)
pprint(result)
* /v1/skus
* Create SKU
* curl -X post
https://sandboxapi.rapyd.net/v1/skus
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
-d '{
"id": "",
"active": true,
"attributes": {
"color": "green",
"arm\_rest": true
},
"currency": "USD",
"image": null,
"inventory": {
"quantity": 1,
"type": "finite",
"value": 600
},
"metadata": {
"merchant\_defined": true
},
"package\_dimensions": {
"length": 2,
"height": 1,
"weight": 3,
"width": 4
},
"price": 600,
"product": "product\_1228f5334ea6cee9052137b85db1699b"
}
'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "9371db29-4304-4b36-9004-cb98539bb941"
},
"data": {
"id": "sku\_de7d491598e013008959aa8484438fc8",
"active": true,
"attributes": {
"color": "green",
"arm\_rest": true
},
"created\_at": 1675845778,
"currency": "USD",
"image": "",
"inventory": {
"type": "finite",
"quantity": 1,
"value": ""
},
"metadata": {
"merchant\_defined": true
},
"price": 600,
"product": "product\_1228f5334ea6cee9052137b85db1699b",
"package\_dimensions": {
"length": 2,
"height": 1,
"weight": 3,
"width": 4
},
"updated\_at": 1675845778
}
}
In this section:
The number of seconds elapsed since the beginning of the Unix epoch, which was 00:00:00 GMT on January 1, 1970. 10-digit integer.
Search results
--------------
No results found
* [Prev](sku.html)
* [Next](create-sku.html#idp343803)
---
# Subscription Past Due Webhook
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [API Reference](api-reference.html)
* [Rapyd Collect](rapyd-collect-363484.html)
* [Subscription](subscription.html)
* [Subscription Webhooks](subscription-webhooks.html)
* Subscription Past Due Webhook
* [Prev](subscription-canceled-webhook.html)
* [Next](subscription-unpaid-webhook.html)
###### Subscription Past Due Webhook
The **CUSTOMER\_SUBSCRIPTION\_PAST\_DUE** webhook is sent when payment for a subscription was not received by the end of the billing period.
[###### Parameters](#idp316351_body)
[###### Webhook Header Parameters](#idp316353_body)
[###### Webhook Root Parameters](#idp316393_body)
[###### Webhook Data Parameters](#idp316466_body)
* CUSTOMER\_SUBSCRIPTION\_PAST\_DUE Webhook
* {
"id": "wh\_f7ddc0e0b63c82d1a38c3092cdcd98bd",
"data": {
"id": "sub\_8130a18f5835951c146c7373f3f53e99",
"type": "payment",
"status": "past\_due",
"billing": "pay\_automatically",
"discount": null,
"ended\_at": null,
"metadata": {},
"trial\_end": null,
"created\_at": 1702347910,
"canceled\_at": null,
"tax\_percent": 0,
"trial\_start": null,
"payout\_fields": null,
"customer\_token": "cus\_cac661b201c726e536c5bdb051ef1414",
"days\_until\_due": 30,
"payment\_fields": null,
"payment\_method": "card\_eb67716cfd8f090686a5157ea86450d7",
"current\_period\_end": 1705026310,
"subscription\_items": {
"url": "/v1/subscription\_items?subscription=sub\_8130a18f5835951c146c7373f3f53e99",
"data": \[{\
"id": "subi\_e61b910e3bd9898d18ddcfcef147951b",\
"plan": {\
"id": "plan\_f538ff2918d5d105c83e859e56ec2c74",\
"tiers": \[\],\
"active": true,\
"amount": 100,\
"product": {\
"id": "Aut\_gSzXJC",\
"name": "Subs Checks",\
"skus": \[\],\
"type": "services",\
"active": true,\
"images": \[\],\
"metadata": {},\
"shippable": false,\
"attributes": \[\],\
"created\_at": 1702347909,\
"unit\_label": "checks",\
"updated\_at": 1702347909,\
"description": "",\
"package\_dimensions": {\
"width": 0,\
"height": 0,\
"length": 0,\
"weight": 0\
},\
"statement\_descriptor": ""\
},\
"currency": "USD",\
"interval": "month",\
"metadata": {},\
"nickname": "",\
"created\_at": 1702347909,\
"tiers\_mode": "",\
"usage\_type": "licensed",\
"billing\_scheme": "per\_unit",\
"interval\_count": 1,\
"aggregate\_usage": "sum",\
"transform\_usage": {\
"round": "up",\
"divide\_by": 1\
},\
"trial\_period\_days": 0\
},\
"created": 1702347910,\
"metadata": null,\
"quantity": 1\
}\
\],
"has\_more": false,
"total\_count": 1
},
"billing\_cycle\_anchor": 1702347910,
"cancel\_at\_period\_end": false,
"current\_period\_start": 1702347910,
"simultaneous\_invoice": false
},
"type": "CUSTOMER\_SUBSCRIPTION\_PAST\_DUE",
"status": "NEW",
"created\_at": 1702944360,
"extended\_timestamp": 1702944360631,
"trigger\_operation\_id": "6c29ba08-eeca-4530-9ccc-02d77e2ec5a9"
}
In this section:
The number of seconds elapsed since the beginning of the Unix epoch, which was 00:00:00 GMT on January 1, 1970. 10-digit integer.
Search results
--------------
No results found
* [Prev](subscription-canceled-webhook.html)
* [Next](subscription-unpaid-webhook.html)
---
# Payment Method Canceled Webhook
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [API Reference](api-reference.html)
* [Rapyd Collect](rapyd-collect-363484.html)
* [Customer Payment Method](customer-payment-method.html)
* [Payment Method Webhooks](payment-method-webhooks.html)
* Payment Method Canceled Webhook
* [Prev](customer-payment-method-created-webhook.html)
* [Next](customer-payment-method-errors.html)
###### Payment Method Canceled Webhook
The **PAYMENT\_METHOD\_CANCELED** webhook is sent when a customer’s payment method is deleted by the client.
[###### Parameters](#idp342676_body)
[###### Webhook Header Parameters](#idp342678_body)
[###### Webhook Root Parameters](#idp342718_body)
[###### Webhook Data Parameters](#idp342791_body)
* PAYMENT\_METHOD\_CANCELED Webhook
* {
"id": "wh\_456ced2d410245270d2024a388b03c5c",
"type": "PAYMENT\_METHOD\_CANCELED",
"data": {
"id": "card\_0ef22c3b9fa5991a4da957d3dcee2e7b",
"name": "John Doe",
"type": "us\_visa\_card",
"image": "",
"last4": "1111",
"category": "card",
"metadata": {},
"acs\_check": "unchecked",
"cvv\_check": "unchecked",
"bin\_details": {
"type": null,
"brand": null,
"country": null,
"bin\_number": "411111"
},
"next\_action": "3d\_verification",
"webhook\_url": "",
"expiration\_year": "25",
"expiration\_month": "12",
"fingerprint\_token": "ocfp\_e599f990674473ce6283b245e9ad2467",
"supporting\_documentation": ""
},
"trigger\_operation\_id": "9499efd0-c818-478d-8d44-f96d0a1de2d5",
"status": "NEW",
"created\_at": 1639052456,
"extended\_timestamp": 1639052456834
}
In this section:
The number of seconds elapsed since the beginning of the Unix epoch, which was 00:00:00 GMT on January 1, 1970. 10-digit integer.
A number for a bank account that is used for international transfers.
A server used by [issuing banks](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_issuer)
to authenticate card users by [3DS](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_rds)
authentication.
Search results
--------------
No results found
* [Prev](customer-payment-method-created-webhook.html)
* [Next](customer-payment-method-errors.html)
---
# Payment Links
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Product Guide](product-guide.html)
* [Rapyd Collect](rapyd-collect.html)
* [Rapyd Checkout Overview](rapyd-checkout-overview.html)
* Payment Links
* [Prev](checkout-toolkit-integration.html#idp217357)
* [Next](payment-links.html#idp217699)
##### Payment Links
Create pages that can be reused for payment requests.
Payment Links can be added to SMS, WhatsApp, invoices, emails or anywhere you can paste a link. Once you generate a payment link from your Rapyd account, a pre-payment page is created for the customer that has a set payment amount, or an open payment amount that can be edited.
The customer is then redirected to a payment page with the selected amount to complete the payment. In the future, the customer can reuse the same link to payment with the same set or custom amount.
[###### Payment Link Example](#idp217699_body)
1. Click **Proceed to Payment**.

2. Select your Payment Method Type. Enter the payment method details.
3. Click **Place Your Order** to complete the payment.

4. The Payment confirmation page appears.

[###### Payment Link Workflow](#idp217721_body)

1. You generate a payment link via API request.
2. The customer clicks on the payment link and a pre-payment page is displayed. The customer sees a fixed amount OR enters a custom amount to pay and clicks **Continue**.
3. Rapyd automatically redirects the customer to the payment page to complete the payment.
4. Customer completes the payment with their desired payment method.
5. Rapyd sends a webhook to you and you notify the customer.
**Note**: If the customer returns to the payment link, the link is reusable and provides the customer with the ability to create another payment.
### Payment Links With FX
You can create a payment link and collect the currency of your choice using FX. Your customer can pay in one currency, while you collect the funds in a different currency using FX. Pass the `fixed_side` and `requested_currency` fields in the request body.
[###### How Payment Links Work](#idp217745_body)
You can create a payment link using the Rapyd API with [Create Payment Link](create-payment-link.html "Create Payment Link")
.
Description of Path Parameters
See [Create Payment Link](create-payment-link.html "Create Payment Link")
for additional details about the parameters.
| Path Parameter | Required | Description |
| --- | --- | --- |
| max\_payments | no | The number of times a payment link can be used for payment before expiring. |
Description of Body Parameters
| Body Parameter | Required | Description |
| --- | --- | --- |
| amount | yes | The amount of the payment, in units of currency defined in **currency**. |
| country | yes | The two-letter ISO 3166-1 ALPHA-2 code for the country. |
| currency | yes | In transactions without FX, defines the currency of the transaction. Three-letter ISO 4217 code.
In FX transactions:
* When `fixed_side` is **buy**, it is the currency received in the Rapyd wallet.
* When `fixed_side` is **sell**, it is the currency charged to the buyer. |
| fixed\_side | no | Indicates whether the FX rate is fixed for the buy side (seller) or for the sell side (buyer).
* **buy** - The currency that the Rapyd Wallet receives for goods or services. Fixed side buy relates to the seller (merchant) funds.
* **sell** - The currency that the buyer is charged for purchasing goods or services. Fixed side sell relates to the buyer (customer) funds. |
| requested\_currency | no | Currency for one side of an FX transaction. Three-letter ISO 4217 code.
* When `fixed_side` is **sell**, it is the currency received in the Rapyd Wallet.
* When `fixed_side` is **buy**, it is the currency charged to the buyer (customer). |
###### Create Payment Link Request
* * Request
* // Request URL: POST https://sandboxapi.rapyd.net/v1/hosted/collect/payments
// Message body:
{
"country": "US",
"currency": "USD",
"amount": "200",
"merchant\_reference\_id": "payment link",
"language": "EN",
"checkout": {
"error\_payment\_url": "https://www.rapyd.net",
"complete\_payment\_url": "https://www.rapyd.net"
}
}
###### Create Payment Link Response
[Create Payment Link](create-payment-link.html "Create Payment Link")
describes the fields in the response.
* * Response
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "72697a92-cf9d-4626-8712-b3f48111f3a7"
},
"data": {
"id": "hp\_reuse\_bf49164ab53b44f3a961aa4bec6659f4",
"amount": 200,
"currency": "USD",
"country": "US",
"amount\_is\_editable": false,
"merchant\_reference\_id": "payment link",
"template": {
"error\_payment\_url": "https://www.rapyd.net",
"complete\_payment\_url": "https://www.rapyd.net"
},
"customer": "",
"requested\_currency": null,
"fixed\_side": null,
"status": "NEW",
"language": "en",
"org\_id": "20044f9b-8f6d-41d9-a106-c6d2c0f54d92",
"merchant\_color": "",
"merchant\_logo": "",
"merchant\_website": "https://www.rapyd.net",
"merchant\_customer\_support": {},
"merchant\_alias": "N/A",
"merchant\_terms": "",
"merchant\_privacy\_policy": "",
"page\_expiration": 1745703479,
"redirect\_url": "https://sbox.rapyd.ly/pay/xD8bROm3"
}
}
In this section:
Search results
--------------
No results found
* [Prev](checkout-toolkit-integration.html#idp217357)
* [Next](payment-links.html#idp217699)
---
# Subscription Item
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [API Reference](api-reference.html)
* [Rapyd Collect](rapyd-collect-363484.html)
* [Subscription](subscription.html)
* Subscription Item
* [Prev](create-subscription-by-hosted-page.html)
* [Next](create-subscription-item.html)
##### Subscription Item
A product of type **service** that is charged to the customer periodically.
The subscription item is associated with a specific subscription that defines how the billing is done.
Define a subscription item in one of the following ways:
* Define it when you define the subscription. See [Create Subscription](create-subscription.html "Create Subscription")
.
* Add the subscription item to an existing subscription. See [Create Subscription Item](create-subscription-item.html "Create Subscription Item")
.
**Prerequisites**
* A subscription. See [Create Subscription](create-subscription.html "Create Subscription")
.
* An active plan. See [Create Plan](create-plan.html "Create Plan")
.
Methods
* [Create Subscription Item](create-subscription-item.html "Create Subscription Item")
* [Update Subscription Item](update-subscription-item.html "Update Subscription Item")
* [List Subscription Items](list-subscription-items.html "List Subscription Items")
* [Retrieve Subscription Item](retrieve-subscription-item.html "Retrieve Subscription Item")
* [Delete Subscription Item](delete-subscription-item.html "Delete Subscription Item")
Errors
* [Subscription Item Errors](subscription-item-errors.html "Subscription Item Errors")
Related Information
* [Usage Record](usage-record.html "Usage Record")
- Adjust a subscription item's quantity for metered billing.
In this section:
Search results
--------------
No results found
* [Prev](create-subscription-by-hosted-page.html)
* [Next](create-subscription-item.html)
---
# Subscription Updated Webhook
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [API Reference](api-reference.html)
* [Rapyd Collect](rapyd-collect-363484.html)
* [Subscription](subscription.html)
* [Subscription Webhooks](subscription-webhooks.html)
* Subscription Updated Webhook
* [Prev](subscription-unpaid-webhook.html)
* [Next](trial-nearing-end-webhook.html)
###### Subscription Updated Webhook
The **CUSTOMER\_SUBSCRIPTION\_UPDATED** webhook is sent when a subscription object is modified.
[###### Parameters](#idp317479_body)
[###### Webhook Header Parameters](#idp317481_body)
[###### Webhook Root Parameters](#idp317521_body)
[###### Webhook Data Parameters](#idp317594_body)
* CUSTOMER\_SUBSCRIPTION\_UPDATED Webhook
* {
"id": "wh\_4255d650d6e3b631932919dddb7f4b0a",
"type": "CUSTOMER\_SUBSCRIPTION\_UPDATED",
"data": {
"id": "sub\_005ca057b15771a535469a60ccce98a2",
"type": "payment",
"status": "active",
"billing": "pay\_automatically",
"discount": null,
"ended\_at": null,
"metadata": {},
"trial\_end": null,
"created\_at": 1641802550,
"canceled\_at": null,
"tax\_percent": 0,
"trial\_start": null,
"payout\_fields": null,
"customer\_token": "cus\_d3ed65d5091a8398cc3651bcedec1201",
"days\_until\_due": null,
"payment\_fields": null,
"payment\_method": "card\_85264b18bc1bfb949dbb2d88d3d5c12c",
"current\_period\_end": 1641975350,
"subscription\_items": {
"url": "/v1/subscription\_items?subscription=sub\_005ca057b15771a535469a60ccce98a2",
"data": \[{\
"id": "subi\_139cc833a43aa340ee25ca59a4a34ea6",\
"plan": {\
"id": "plan\_a2b5060d3e93d4c32883ac2b39c3f2de",\
"tiers": \[\],\
"amount": 1050,\
"product": {\
"id": "product\_2ddd6f6b43f598d30543ef23ab806b58",\
"name": "Acme music stream",\
"skus": \[\],\
"type": "services",\
"active": true,\
"images": \[\],\
"metadata": {},\
"shippable": false,\
"attributes": \[\],\
"created\_at": 1641481860,\
"unit\_label": "",\
"updated\_at": 1641481860,\
"description": "",\
"package\_dimensions": {\
"width": 0,\
"height": 0,\
"length": 0,\
"weight": 0\
},\
"statement\_descriptor": ""\
},\
"currency": "USD",\
"interval": "day",\
"metadata": {},\
"nickname": "Plan 1050",\
"created\_at": 1641802015,\
"tiers\_mode": "",\
"usage\_type": "licensed",\
"billing\_scheme": "per\_unit",\
"interval\_count": 1,\
"aggregate\_usage": "sum",\
"transform\_usage": {\
"round": "up",\
"divide\_by": 1\
},\
"trial\_period\_days": 0\
},\
"created": 1641802550,\
"metadata": null,\
"quantity": 1\
}\
\],
"has\_more": false,
"total\_count": 0
},
"billing\_cycle\_anchor": 1641802550,
"cancel\_at\_period\_end": false,
"current\_period\_start": 1641888950
},
"trigger\_operation\_id": "5df6b51b-0203-4930-a9d0-b51353e31464",
"status": "NEW",
"created\_at": 1641859559,
"extended\_timestamp": 1641859559431
}
In this section:
The number of seconds elapsed since the beginning of the Unix epoch, which was 00:00:00 GMT on January 1, 1970. 10-digit integer.
Search results
--------------
No results found
* [Prev](subscription-unpaid-webhook.html)
* [Next](trial-nearing-end-webhook.html)
---
# Deleting a Virtual Account
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Product Guide](product-guide.html)
* [Virtual Accounts](virtual-accounts.html)
* Deleting a Virtual Account
* [Prev](virtual-accounts.html#idp243882)
* [Next](deleting-a-virtual-account.html#idp243929)
#### Deleting a Virtual Account
Accept Payments Locally. | `Enterprise`
When a virtual account is created, it is linked to a wallet account. Each Rapyd wallet can have multiple virtual accounts. Virtual account numbers are active as long as the wallet account is active.
You can delete a Virtual Account linked to an existing wallet. You may decide to do this if the Virtual Account is unused.
### Warning
A Virtual Account must have the status of **ACT** (active) in order to be deleted. Once you delete your Virtual Account, the action is **permanent**. Any payment sent to a closed Virtual Account will not be credited to the wallet and will return to the sender.
You cannot close your Virtual Account if you have pending wallet transactions. Once your transactions have been settled, you can delete your Virtual Account.
[##### Deleting a Virtual Account Workflow](#idp243929_body)

1. You ask Rapyd to delete your Virtual Account.
2. Rapyd deletes the Virtual Account.
[##### How Deleting a Virtual Account Works](#idp243939_body)
Use [Delete Virtual Account](delete-virtual-account.html "Delete Virtual Account")
to permanently close your Virtual Account.
Description of Path Parameters
| Path Parameter | Description |
| --- | --- |
| virtual\_account\_id | ID of the virtual account, starting with **issuing\_**. |
[###### Delete Virtual Account Request](#idp243961_body)
* * Request
* // Request URL: DELETE https://sandboxapi.rapyd.net/v1/issuing/bankaccounts/:virtual\_account\_id
// Message body absent
###### Delete Virtual Account Response
* * Response
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "d778b3e6-d766-4ed1-8c85-8506cf2482bc"
},
"data": {
"id": "issuing\_7807a16258d33b908426454b3d1900f7",
"deleted": true
}
}
In this section:
Search results
--------------
No results found
* [Prev](virtual-accounts.html#idp243882)
* [Next](deleting-a-virtual-account.html#idp243929)
---
# List Countries
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [API Reference](api-reference.html)
* [Resource Methods](resource-methods.html)
* [Localization Methods](localization-methods.html)
* List Countries
* [Prev](list-supported-languages.html#idp418955)
* [Next](list-countries.html#idp419050)
##### List Countries
Retrieve a list of all countries.
[###### Parameters](#idp419054_body)
[###### Request Header Parameters](#idp419056_body)
[###### Response Parameters](#idp419106_body)
###### Code Samples
* * .NET
* using System;
namespace RapydApiRequestSample
{
class Program
{
static void Main(string\[\] args)
{
try
{
string result = RapydApiRequestSample.Utilities.MakeRequest("GET", "/v1/data/countries");
Console.WriteLine(result);
}
catch (Exception e)
{
Console.WriteLine("Error completing request: " + e.Message);
}
}
}
}
* * JavaScript
* const makeRequest = require('/utilities').makeRequest;
async function main() {
try {
const result = await makeRequest('GET', '/v1/data/countries');
console.log(result);
} catch (error) {
console.error('Error completing request', error);
}
}
* * PHP
* /utilities.php";
include($path);
try {
$object = make\_request('get', '/v1/data/countries');
var\_dump($object);
} catch(Exception $e) {
echo "Error: $e";
}
?>
* * Python
* from pprint import pprint
from utilities import make\_request
response = make\_request(method='get',
path='/v1/data/countries')
pprint(response)
* /v1/data/countries
* List Countries
* curl -X get
https://sandboxapi.rapyd.net/v1/data/countries
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
* {
"status": {
"error\_code": "0",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "cf6d191d-088b-41e0-a080-3afe31f3a005"
},
"data": \[\
{\
"id": 127,\
"name": "Afghanistan",\
"iso\_alpha2": "AF",\
"iso\_alpha3": "AFG",\
"currency\_code": "AFN",\
"currency\_name": "Afghan afghani",\
"currency\_sign": "؋",\
"phone\_code": "93"\
},\
{\
"id": 128,\
"name": "Åland Islands",\
"iso\_alpha2": "AX",\
"iso\_alpha3": "ALA",\
"currency\_code": "EUR",\
"currency\_name": "Euro",\
"currency\_sign": "€",\
"phone\_code": "358"\
}\
\]
}
In this section:
The number of seconds elapsed since the beginning of the Unix epoch, which was 00:00:00 GMT on January 1, 1970. 10-digit integer.
Search results
--------------
No results found
* [Prev](list-supported-languages.html#idp418955)
* [Next](list-countries.html#idp419050)
---
# Saving a European Card While Creating a Payment
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [API Reference](api-reference.html)
* [Developer Resources](developer-resources.html)
* [Rapyd Collect](rapyd-collect-542537.html)
* [Payment](payment-542538.html)
* Saving a European Card While Creating a Payment
* [Prev](creating-a-payment-with-a-european-card-on-file.html)
* [Next](creating-a-payment-with-fx.html)
###### Saving a European Card While Creating a Payment
Create a payment and store a customer's card payment information in one operation.
A stored card payment method is called a card on file. Sensitive [personal identifying information (PII)](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_pii "Personally Identifying Information")
is stored securely, and the client has access only to the card ID. A card on file can be defined for unrelated payments, installment plans, or recurring payments. You can define a card multiple times for different payment types. 3DS authentication is required only when the card is saved on the first payment, not for future payments.
This procedure is relevant to European **card** payment method types.
### Note
You can accomplish the same result using [Add Payment Method to Customer](add-payment-method-to-customer.html "Add Payment Method to Customer")
.
Prerequisites
* Run [Get Payment Method Required Fields](get-payment-method-required-fields.html "Get Payment Method Required Fields")
for a European card payment method.
###### How
Create a payment as described in [Create Payment](create-payment.html "Create Payment")
, with the following settings:
* `payment_method` - Specify an object that contains all the required fields for a card payment method.
* `payment_method.fields.recurrence_type` - The type of payment. One of the following:
* **installment** - A defined number of payments.
* **recurring** - Indefinitely recurring payments.
* **unscheduled** - Individual unrelated payments.
* `initiation_type` - Set as **customer\_present**.
* `save_payment_method` - Set as **true**.
Create Payment request - partial
{
"payment\_method": {
"type": "gb\_visa\_card",
"fields": {
"recurrence\_type": "installment",
"name": "John Doe",
// . . .
}
},
// . . .
"initiation\_type": "customer\_present",
"save\_payment\_method": true,
}
Response - partial
"data": {
// . . .
"payment\_method": "card\_e1571fbb1822d5a3dae219545e33d489",
"payment\_method\_data": {
// . . .
"recurrence\_type": "installment",
// . . .
},
// . . .
}
The response shows:
* `payment_method` - The secure card payment method ID, a string starting with **card\_**. In this example: **card\_e1571fbb1822d5a3dae219545e33d489**
* `payment_method_data.recurrence_type` - The recurrence type value. In this example: **installment**
For a full code example, see **Payment by card - save payment method** on [Create Payment](create-payment.html "Create Payment")
.
### Note
If you did not set `3d_required` to **false**, the operation is complete when the customer completes [3DS](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_rds "Three-Domain Secure")
authentication.
###### Related Information
* [Creating a Payment with a European Card on File](creating-a-payment-with-a-european-card-on-file.html "Creating a Payment with a European Card on File")
In this section:
Sensitive personal information that can be used to identify or locate an individual. PII is protected by law and [PCI](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_pci)
industry rules.
A protocol that provides increased security for card-not-present transactions. Rapyd supports version 2.2.
Search results
--------------
No results found
* [Prev](creating-a-payment-with-a-european-card-on-file.html)
* [Next](creating-a-payment-with-fx.html)
---
# Trial Nearing End Webhook
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [API Reference](api-reference.html)
* [Rapyd Collect](rapyd-collect-363484.html)
* [Subscription](subscription.html)
* [Subscription Webhooks](subscription-webhooks.html)
* Trial Nearing End Webhook
* [Prev](subscription-updated-webhook.html)
* [Next](invoice-created-webhook.html)
###### Trial Nearing End Webhook
The **CUSTOMER\_SUBSCRIPTION\_TRIAL\_WILL\_END** webhook is sent 3 days before the end of a subscription trial period.
[###### Parameters](#idp318043_body)
[###### Webhook Header Parameters](#idp318045_body)
[###### Webhook Root Parameters](#idp318085_body)
[###### Webhook Data Parameters](#idp318158_body)
* CUSTOMER\_SUBSCRIPTION\_TRIAL\_WILL\_END Webhook
* {
"id": "wh\_beee0db0dc021a1a042bfe3945d8e011",
"type": "CUSTOMER\_SUBSCRIPTION\_TRIAL\_WILL\_END",
"data": {
"id": "sub\_1e15fad92f711c3fa1f00db92ef8d91f",
"type": "payment",
"status": "trialing",
"billing": "pay\_automatically",
"discount": null,
"ended\_at": null,
"metadata": {},
"trial\_end": 1669377641,
"created\_at": 1668945641,
"canceled\_at": null,
"tax\_percent": 0,
"trial\_start": 1668945641,
"payout\_fields": null,
"customer\_token": "cus\_c0cf01e6610a80f056d48252d3ad2c37",
"days\_until\_due": 30,
"payment\_fields": null,
"payment\_method": "other\_91c1d735a483f86d6e2631a3bcbb45de",
"current\_period\_end": 1669377641,
"subscription\_items": {
"url": "/v1/subscription\_items?subscription=sub\_1e15fad92f711c3fa1f00db92ef8d91f",
"data": \[\
{\
"id": "subi\_511fe66bb4e184d25727f2025e770750",\
"plan": {\
"id": "plan\_7a51ebf97431a4be38777790f2a95d7c",\
"tiers": \[\],\
"amount": 500,\
"product": {\
"id": "product\_4467adcd4c2062664e69b189d8e7a541",\
"name": "SEO",\
"skus": \[\],\
"type": "services",\
"active": true,\
"images": \[\
"64bit-encoded-image-1"\
\],\
"metadata": {\
"merchant\_defined": true\
},\
"shippable": false,\
"attributes": \[\
"frequency"\
\],\
"created\_at": 1668930252,\
"unit\_label": "",\
"updated\_at": 1668930252,\
"description": "SEO services",\
"package\_dimensions": {\
"width": 0,\
"height": 0,\
"length": 0,\
"weight": 0\
},\
"statement\_descriptor": "SEO Services"\
},\
"currency": "USD",\
"interval": "week",\
"metadata": {},\
"nickname": "Weekly SEO Pro",\
"created\_at": 1668945296,\
"tiers\_mode": "",\
"usage\_type": "licensed",\
"billing\_scheme": "per\_unit",\
"interval\_count": 1,\
"aggregate\_usage": "sum",\
"transform\_usage": {\
"round": "up",\
"divide\_by": 1\
},\
"trial\_period\_days": 5\
},\
"created": 1668945641,\
"metadata": null,\
"quantity": 1\
}\
\],
"has\_more": false,
"total\_count": 1
},
"billing\_cycle\_anchor": 1669377641,
"cancel\_at\_period\_end": false,
"current\_period\_start": 1668945641
},
"trigger\_operation\_id": "a686c073-7975-434a-80a1-cf837171ae26",
"status": "NEW",
"created\_at": 1669110656,
"extended\_timestamp": 1669110656545
}
In this section:
The number of seconds elapsed since the beginning of the Unix epoch, which was 00:00:00 GMT on January 1, 1970. 10-digit integer.
Search results
--------------
No results found
* [Prev](subscription-updated-webhook.html)
* [Next](invoice-created-webhook.html)
---
# Pix
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Product Guide](product-guide.html)
* [Payment Method Types](payment-method-types.html)
* [Americas](americas.html)
* Pix
* [Prev](bancolombia.html#idp228065)
* [Next](pix.html#idp228132)
##### Pix
A mobile payment method used to transfer bank funds in Brazil.
###### What Is Pix?
Pix is an instant payments system that allows real-time transfer and settlement of funds between the bank accounts of participating financial institutions. Checking accounts, savings accounts, and prepaid payments accounts can be used to transfer funds with Pix. The service is free to all retail customers.
Pix benefits the user by utilizing QR (Quick Response) codes to make direct bank transfers to merchants, in addition to person-to-person transfers. Users can initiate a payment with Pix using their mobile phone. Hundreds of participating banks and financial institutions in Brazil have joined Pix.
###### User Experience
When a customer wants to make a payment online, they will select the Pix payment method, provide payer details, login into their mobile bank app, receive and scan a QR code, and confirm payment.
1. Select the Pix payment method and be redirected to the landing page.

2. Add the payer details
Receive a QR code to proceed with the payment process

3. Log in to your preferred mobile banking app and click on **Pix**

4. Scan the QR code

5. Or paste the QR code (optional)

6. Confirm the payment

7. Redirect to the payment confirmation page

###### Pix Details
**Note**: The payment method **br\_pix\_cb\_bank** is used for cross border payments.
| | |
| --- | --- |
| Details | Description |
| Payment Method Category | Bank Redirect |
| Payment Request String | PMT = br\_pix\_cb\_bank
PMT Name = PIX CB bank payment
PMT = br\_pix\_bank
PMT Name = PIX bank payment |
| Country | Brazil |
| Presentment Currency | BRL |
| Refunds/Reversal | No |
| Recurring | No |
| Disputes/Chargebacks | No |
| Transaction Limits | Maximum daily limit: No limit
Maximum nightly limit: Up to 1,000 BRL |
| Settlement Timeframe | Real-time |
| Rapyd Guide | See [Bank Redirect](bank-redirect.html "Bank Redirect") |
In this section:
Search results
--------------
No results found
* [Prev](bancolombia.html#idp228065)
* [Next](pix.html#idp228132)
---
# Cancel Subscription
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [API Reference](api-reference.html)
* [Rapyd Collect](rapyd-collect-363484.html)
* [Subscription](subscription.html)
* [Subscription](subscription-364807.html)
* Cancel Subscription
* [Prev](retrieve-subscription.html)
* [Next](delete-discount-from-subscription.html)
###### Cancel Subscription
Delete a subscription from the database.
When the subscription is canceled immediately, this method triggers the following webhooks:
* [Subscription Canceled Webhook](subscription-canceled-webhook.html "Subscription Canceled Webhook")
. This webhook contains the same information as the response.
* [Subscription Updated Webhook](subscription-updated-webhook.html "Subscription Updated Webhook")
* [Invoice Created Webhook](invoice-created-webhook.html "Invoice Created Webhook")
The following asynchronous webhook provides information about later changes to the subscription object:
* [Invoice Payment Succeeded Webhook](invoice-payment-succeeded-webhook.html "Invoice Payment Succeeded Webhook")
When the subscription is canceled at the end of the current billing period, all of these webhooks are triggered asynchronously.
[###### Parameters](#idp304918_body)
[###### Request Path Parameters](#idp304920_body)
* * subscription
* ID of the subscription. String starting with **sub\_**.
[###### Request Query Parameters](#idp304930_body)
* * cancel\_at\_period\_end
* Determines when the subscription is canceled.
* **true** - Cancels the subscription at the end of the current period.
* **false** - Cancels the subscription immediately.
false
[###### Request Header Parameters](#idp304947_body)
[###### Response Parameters](#idp304997_body)
###### Code Samples
* * .NET
* using System;
using System.Text.Json;
namespace RapydApiRequestSample
{
class Program
{
static void Main(string\[\] args)
{
try
{
string subscriptionItem = "sub\_5b47720e0281b501092a695773fb2279";
string result = RapydApiRequestSample.Utilities.MakeRequest("DELETE", $"/v1/payments/subscriptions/{subscriptionItem}");
Console.WriteLine(result);
}
catch (Exception e)
{
Console.WriteLine("Error completing request: " + e.Message);
}
}
}
}
* * JavaScript
* const makeRequest = require('/utilities').makeRequest;
async function main() {
try {
const result = await makeRequest(
'DELETE',
'/v1/payments/subscriptions/sub\_5b47720e0281b501092a695773fb2279'
);
console.log(result);
} catch (error) {
console.error('Error completing request', error);
}
}
* * PHP
* /utilities.php";
include($path);
try {
$object = make\_request('delete', '/v1/payments/subscriptions/sub\_5b47720e0281b501092a695773fb2279');
var\_dump($object);
} catch(Exception $e) {
echo "Error: $e";
}
?>
* * Python
* from pprint import pprint
from utilities import make\_request
result = make\_request(method='delete', path='/v1/payments/subscriptions/sub\_c120969b649d4a029b660228e00c8d97')
pprint(result)
* /v1/payments/subscriptions/:subscription
* Cancel Subscription Immediately
* curl -X delete
https://sandboxapi.rapyd.net/v1/payments/subscriptions/sub\_6f634b7aced3e9f872f66fc8ef708ae5
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "ecc6d7bc-fa24-4659-a570-3190719b0d6e"
},
"data": {
"id": "sub\_6f634b7aced3e9f872f66fc8ef708ae5",
"billing": "pay\_automatically",
"billing\_cycle\_anchor": 1701267785,
"created\_at": 1701267785,
"customer\_token": "cus\_da95b15aa75f76e8d5ac42293e326ddd",
"days\_until\_due": 30,
"metadata": {},
"tax\_percent": 0,
"cancel\_at\_period\_end": false,
"canceled\_at": 1701854001,
"current\_period\_end": 1703859785,
"current\_period\_start": 1701267785,
"discount": null,
"ended\_at": null,
"subscription\_items": {
"data": \[\
{\
"id": "subi\_60ab178c14ab3cb0d74ff82458485963",\
"created": 1701267785,\
"metadata": null,\
"quantity": 5,\
"plan": {\
"id": "plan\_811bfbf126ea0cbabeee447cdb1486c2",\
"aggregate\_usage": "sum",\
"amount": 0,\
"billing\_scheme": "tiered",\
"created\_at": 1701267773,\
"currency": "USD",\
"interval": "month",\
"interval\_count": 1,\
"metadata": {\
"merchant\_defined": true\
},\
"product": {\
"id": "product\_c07612df254fce2aaba1854e3ce2008b",\
"active": true,\
"attributes": \[\
"location",\
"size"\
\],\
"created\_at": 1701267766,\
"description": "Monthly parking - covered area, compact car",\
"images": \[\],\
"metadata": {},\
"name": "Monthly parking",\
"package\_dimensions": {\
"height": 0,\
"length": 0,\
"weight": 0,\
"width": 0\
},\
"shippable": false,\
"skus": \[\],\
"statement\_descriptor": "",\
"type": "service",\
"unit\_label": "",\
"updated\_at": 1701267766\
},\
"nickname": "sbp",\
"tiers": \[\
{\
"amount": 15,\
"up\_to": "inf",\
"flat\_amount": 0\
}\
\],\
"tiers\_mode": "volume",\
"transform\_usage": {\
"divide\_by": 0,\
"round": ""\
},\
"trial\_period\_days": 0,\
"usage\_type": "licensed",\
"active": true\
}\
}\
\],
"has\_more": false,
"total\_count": 1,
"url": "/v1/subscription\_items?subscription=sub\_6f634b7aced3e9f872f66fc8ef708ae5"
},
"status": "active",
"trial\_end": null,
"trial\_start": null,
"payment\_method": "card\_160e5257c76e6c33f35c1300e19a885a",
"payment\_fields": null,
"payout\_fields": null,
"type": "payment",
"simultaneous\_invoice": true,
"enable\_retries": true,
"retry\_options": {
"max\_retries": 3,
"retry\_interval": "days",
"retry\_schedule": "fixed",
"retry\_interval\_count": 3
}
}
}
* Cancel Subscription at end of billing cycle
* curl -X delete
https://sandboxapi.rapyd.net/v1/payments/subscriptions/sub\_6f634b7aced3e9f872f66fc8ef708ae5?cancel\_at\_period\_end=true
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "e172e73d-3892-437f-ac6d-1d8ac3913f31"
},
"data": {
"id": "sub\_6f634b7aced3e9f872f66fc8ef708ae5",
"billing": "pay\_automatically",
"billing\_cycle\_anchor": 1701267785,
"created\_at": 1701267785,
"customer\_token": "cus\_da95b15aa75f76e8d5ac42293e326ddd",
"days\_until\_due": 30,
"metadata": {},
"tax\_percent": 0,
"cancel\_at\_period\_end": true,
"canceled\_at": 1701853806,
"current\_period\_end": 1703859785,
"current\_period\_start": 1701267785,
"discount": null,
"ended\_at": null,
"subscription\_items": {
"data": \[\
{\
"id": "subi\_60ab178c14ab3cb0d74ff82458485963",\
"created": 1701267785,\
"metadata": null,\
"quantity": 5,\
"plan": {\
"id": "plan\_811bfbf126ea0cbabeee447cdb1486c2",\
"aggregate\_usage": "sum",\
"amount": 0,\
"billing\_scheme": "tiered",\
"created\_at": 1701267773,\
"currency": "USD",\
"interval": "month",\
"interval\_count": 1,\
"metadata": {\
"merchant\_defined": true\
},\
"product": {\
"id": "product\_c07612df254fce2aaba1854e3ce2008b",\
"active": true,\
"attributes": \[\
"location",\
"size"\
\],\
"created\_at": 1701267766,\
"description": "Monthly parking - covered area, compact car",\
"images": \[\],\
"metadata": {},\
"name": "Monthly parking",\
"package\_dimensions": {\
"height": 0,\
"length": 0,\
"weight": 0,\
"width": 0\
},\
"shippable": false,\
"skus": \[\],\
"statement\_descriptor": "",\
"type": "service",\
"unit\_label": "",\
"updated\_at": 1701267766\
},\
"nickname": "sbp",\
"tiers": \[\
{\
"amount": 15,\
"up\_to": "inf",\
"flat\_amount": 0\
}\
\],\
"tiers\_mode": "volume",\
"transform\_usage": {\
"divide\_by": 0,\
"round": ""\
},\
"trial\_period\_days": 0,\
"usage\_type": "licensed",\
"active": true\
}\
}\
\],
"has\_more": false,
"total\_count": 1,
"url": "/v1/subscription\_items?subscription=sub\_6f634b7aced3e9f872f66fc8ef708ae5"
},
"status": "active",
"trial\_end": null,
"trial\_start": null,
"payment\_method": "card\_160e5257c76e6c33f35c1300e19a885a",
"payment\_fields": null,
"payout\_fields": null,
"type": "payment",
"simultaneous\_invoice": true,
"enable\_retries": true,
"retry\_options": {
"max\_retries": 3,
"retry\_interval": "days",
"retry\_schedule": "fixed",
"retry\_interval\_count": 3
}
}
}
In this section:
The number of seconds elapsed since the beginning of the Unix epoch, which was 00:00:00 GMT on January 1, 1970. 10-digit integer.
Search results
--------------
No results found
* [Prev](retrieve-subscription.html)
* [Next](delete-discount-from-subscription.html)
---
# List Supported Languages
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [API Reference](api-reference.html)
* [Resource Methods](resource-methods.html)
* [Localization Methods](localization-methods.html)
* List Supported Languages
* [Prev](localization-methods.html)
* [Next](list-supported-languages.html#idp418955)
##### List Supported Languages
Retrieve a list of the languages supported for hosted pages.
A hosted page can appear in many foreign languages. The `language` (or `merchant_language`) field determines the default language of a hosted page. The field type is string. Use lower-case letters for the value.
* If no value is specified, the language of the user's browser is used.
* If the language of the user's browser cannot be determined, the default language is English.
Relevant to:
* [Display Issued Card Details to Customer](display-issued-card-details-to-customer.html "Display Issued Card Details to Customer")
* [Create Subscription by Hosted Page](create-subscription-by-hosted-page.html "Create Subscription by Hosted Page")
* [Create Checkout Page](create-checkout-page.html "Create Checkout Page")
* [Create Payment Link](create-payment-link.html "Create Payment Link")
* [Create Beneficiary Tokenization Page](create-beneficiary-tokenization-page.html "Create Beneficiary Tokenization Page")
* [Create Card Token](create-card-token.html "Create Card Token")
* [Create Identity Verification Page](create-identity-verification-page.html "Create Identity Verification Page")
* [Activate Issued Card Using Hosted Page](activate-issued-card-using-hosted-page.html "Activate Issued Card Using Hosted Page")
* [Create Hosted Page for PIN Management](create-hosted-page-for-pin-management.html "Create Hosted Page for PIN Management")
[###### Parameters](#idp418959_body)
[###### Request Header Parameters](#idp418961_body)
[###### Response Parameters](#idp419011_body)
* * languages
* List of the languages supported for hosted pages.
* * name
* Name of the language in English.
* * iso\_alpha2
* ISO 639-1 code for the language. 2 letters, with suffix where relevant.
* /v1/hosted/config/supported\_languages
* List Hosted Page Supported Languages
* curl -X get
https://sandboxapi.rapyd.net/v1/hosted/config/supported\_languages
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
*
{
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "f1409a45-92ea-4e49-9fa6-a667fbf44826"
},
"data": {
"languages": \[\
{\
"name": "English",\
"iso\_alpha2": "en"\
},\
{\
"name": "Spanish",\
"iso\_alpha2": "es"\
},\
{\
"name": "Simplified Chinese",\
"iso\_alpha2": "zh-cn"\
},\
{\
"name": "Traditional Chinese",\
"iso\_alpha2": "zh-tw"\
},\
{\
"name": "Korean",\
"iso\_alpha2": "ko"\
},\
{\
"name": "Portuguese",\
"iso\_alpha2": "pt"\
},\
{\
"name": "Indonesian",\
"iso\_alpha2": "id"\
},\
{\
"name": "Thai",\
"iso\_alpha2": "th"\
},\
{\
"name": "Tagalog",\
"iso\_alpha2": "tl"\
},\
{\
"name": "German",\
"iso\_alpha2": "de"\
},\
{\
"name": "Icelandic",\
"iso\_alpha2": "is"\
},\
{\
"name": "Dutch",\
"iso\_alpha2": "nl"\
},\
{\
"name": "Vietnamese",\
"iso\_alpha2": "vi"\
},\
{\
"name": "Malay",\
"iso\_alpha2": "ms"\
},\
{\
"name": "Japanese",\
"iso\_alpha2": "ja"\
},\
{\
"name": "Hindi",\
"iso\_alpha2": "hi"\
},\
{\
"name": "French",\
"iso\_alpha2": "fr"\
},\
{\
"name": "Russian",\
"iso\_alpha2": "ru"\
},\
{\
"name": "Ukrainian",\
"iso\_alpha2": "uk"\
},\
{\
"name": "Greek",\
"iso\_alpha2": "el"\
},\
{\
"name": "Italian",\
"iso\_alpha2": "it"\
},\
{\
"name": "Turkish",\
"iso\_alpha2": "tr"\
},\
{\
"name": "Lithuanian",\
"iso\_alpha2": "lt"\
},\
{\
"name": "Estonian",\
"iso\_alpha2": "et"\
},\
{\
"name": "Slovak",\
"iso\_alpha2": "sk"\
},\
{\
"name": "Slovene",\
"iso\_alpha2": "sl"\
},\
{\
"name": "Danish",\
"iso\_alpha2": "dk"\
},\
{\
"name": "Hebrew",\
"iso\_alpha2": "he"\
}\
\]
}
}
In this section:
The number of seconds elapsed since the beginning of the Unix epoch, which was 00:00:00 GMT on January 1, 1970. 10-digit integer.
Search results
--------------
No results found
* [Prev](localization-methods.html)
* [Next](list-supported-languages.html#idp418955)
---
# Checkout Page
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [API Reference](api-reference.html)
* [Rapyd Collect](rapyd-collect-363484.html)
* Checkout Page
* [Prev](payment-errors.html)
* [Next](create-checkout-page.html)
#### Checkout Page
Defines a customer-facing page that collects [personal identifying information (PII)](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_pii "Personally Identifying Information")
from the customer and creates a payment.
The checkout page can be configured as a standalone page or an i-frame inside the client's own web page. See [Rapyd Checkout Overview](rapyd-checkout-overview.html "Rapyd Checkout Overview")
. The client can configure the length of time that the hosted page is usable.
When the customer submits the page, Rapyd sends the client one or more webhooks.
### Note
Transactions with 3DS authentication must be authenticated within 15 minutes.
Methods
* [Create Checkout Page](create-checkout-page.html "Create Checkout Page")
* [Retrieve Checkout Page](retrieve-checkout-page.html "Retrieve Checkout Page")
Errors
* [Checkout Errors](checkout-errors.html "Checkout Errors")
In this section:
Sensitive personal information that can be used to identify or locate an individual. PII is protected by law and [PCI](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_pci)
industry rules.
Search results
--------------
No results found
* [Prev](payment-errors.html)
* [Next](create-checkout-page.html)
---
# Payment Link
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [API Reference](api-reference.html)
* [Rapyd Collect](rapyd-collect-363484.html)
* Payment Link
* [Prev](invoice-updated-webhook.html)
* [Next](create-payment-link.html)
#### Payment Link
Reuse a hosted payment page.
A customer uses the payment link to open a hosted payment page. The customer provides required information and submits the payment on a Rapyd Checkout page. For more information, see [Checkout Page](checkout-page.html "Checkout Page")
.
To view payment links after creation, use [Retrieve Payment Link](retrieve-payment-link.html "Retrieve Payment Link")
or the Client Portal.
Methods
* [Create Payment Link](create-payment-link.html "Create Payment Link")
* [Retrieve Payment Link](retrieve-payment-link.html "Retrieve Payment Link")
In this section:
Search results
--------------
No results found
* [Prev](invoice-updated-webhook.html)
* [Next](create-payment-link.html)
---
# Digital Wallet Provisioning
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Product Guide](product-guide.html)
* [Rapyd Issuing](rapyd-issuing.html)
* Digital Wallet Provisioning
* [Prev](hosted-page-for-virtual-cards.html#idp245434)
* [Next](digital-wallet-provisioning.html#idp245445)
#### Digital Wallet Provisioning
You can add an issued card to a digital wallet through a process called provisioning. A card is provisioned when the Primary Account Number (PAN) of the issued card is tokenized and stored as a digital token. The digital token is then added to the digital wallet to store the card information. Multiple digital tokens can be assigned to the same card.
You can provision cards issued by Rapyd and add them to a digital wallet such as Apple Pay and Google Pay.
There are two main types of provisioning: **manual provisioning** and **in-app provisioning**.
[##### Manual Provisioning](#idp245445_body)
**Manual provisioning** refers to the process where the customer's card details are manually added to a local mobile digital wallet stored on a mobile device. This action is usually performed by the customer.
[##### In-app Provisioning](#idp245449_body)
**In-app provisioning** refers to the process where the customer's card details are added to the digital wallet using an app created by the issuer. Manual and in-app provisioning are similar, but require different levels of verification for transmitting and storing Personal Identifying Information (PII).
You can use the Rapyd API to provision issued cards to a digital wallet.
[##### Token Management](#idp245454_body)
You can manage your card tokens using the Rapyd API. You can create tokens, disable tokens, and change the token status. The flow chart below describes the token lifecycle and demonstrates the relationship between the various token statuses.

The token statuses are summarized in the table below:
Description of Token Statuses
| Token Status | Description |
| --- | --- |
| Created | Creation of the token is in progress. |
| Active | The token is active and can be used to make payments. |
| Pending | The token is pending activation. Relevant for tokens requiring orange verification. |
| Suspended | The token is temporarily suspended and can be activated again. |
| Deactivated | The token has been deactivated or deleted. |
###### Token Request Verification
When a card token is requested, certain levels of verification may be required by the issuer. The following table describes the different verification levels and their requirements:
Description of Verification Levels
| Verification Level | Provisioning Type | Description |
| --- | --- | --- |
| Green Verification | In-app | No additional verification is required for the token request |
| Yellow Verification | Manual / In-app | Enter your One Time Password (OTP) to complete the verification |
| Orange Verification | Manual / In-app | Enter your One Time Password and speak with your issuer over the phone. Contact your issuer for additional verification. |
[##### Use Case](#idp245537_body)
As a merchant partnered with Rapyd, you would like to provision issued cards to your local application. You integrate with Google Pay or Apple Pay to expand the functionality of your mobile application. You use the Rapyd API to enable card provisioning. Customers can add their cards to their Google Pay wallet or Apple Pay wallet using your application, improving their experience.
[##### Manual Provisioning Workflow](#idp245540_body)

1. The customer manually adds their card details to a digital wallet.
2. Rapyd processes the token information, sends a OTP verification.
3. Token is created by the Card Network.
4. Token is activated in the digital wallet servers.
5. Customer completes the verification (either with OTP, or OTP and Issuer Verification).
[##### In-app Provisioning Workflow](#idp245556_body)

1. You add the customer card details via your application.
2. The provisioning request is sent to Rapyd.
3. The customer completes the verification (OTP and Issuer Verification).
4. You get a response payload with the token. You forward the token to the mobile ewallet app to create the digital token.
### PCI Certification
Only clients with [PCI-DSS](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_dss "Payment Card Industry Data Security Standard")
certification can handle personal identifying information for cards. This method is available to merchants who have signed a special agreement with Rapyd.
[##### How In-App Provisioning to a Digital Wallet Works](#idp245574_body)
###### In-App Provisioning Requirements
Before you can enable in-app provisioning using the Rapyd API, you must also integrate with Apple Pay or Google Pay developer platforms. Each digital wallet service has a set of requirements you must meet in order to integrate the Google Pay or Apple Pay functionality into your application.
After integration, the Rapyd API enables you to use in-app provisioning for cards issued by Rapyd.
For more specific information about how to integrate with Google Pay or Apple Pay, view the [Apple developer documentation](https://developer.apple.com/documentation/passkit_apple_pay_and_wallet/apple_pay/setting_up_apple_pay)
and the [Google developer documentation](https://developers.google.com/pay/api/android/guides/setup)
.
Meet the following requirements to complete your integration:
1. Integrate with the card issuer.
**Note**: Rapyd, as your card issuer, will interact with the digital wallet servers to pass encrypted payload data and tokenize card information.
2. Register as a developer with your digital wallet provider (Google Pay or Apple Pay).
3. Display the Apple Pay or Google Pay button in your application.
4. Initiate the provisioning request.
**Note**: You will use the Rapyd API to initiate the provisioning request.
###### In-app Provisioning
You can provision a card to a digital wallet. Use the applicable path parameters for the request:
Description of Path Parameters
| Path Parameter | Description |
| --- | --- |
| google\_pay | The Google Pay digital wallet used for card provisioning. |
| apple\_pay | The Apple Pay digital wallet used for card provisioning. |
**Note**: The `google_pay` path parameter is used in the example request below.
###### In-app Provisioning Request
* * Request
* // Request URL: POST https://sandboxapi.rapyd.net/v1/issuing/cards/:card\_id/card\_tokens/google\_pay
{
"client\_wallet\_provider": "40010075001",
"client\_wallet\_account\_id": "4CEBB556CBB31B94",
"client\_device\_id": "je-UCHgwQ97Icy-wrI\_f48PU"
}
###### In-app Provisioning Response
* * Response
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "11b95b4b-7783-4062-b32f-d607c3f5bad1"
},
"data": {
"PaymentInstrumentData": "",
"UserAddress": {
}
}
}
[##### How Token Management for Cards Works](#idp245645_body)
[###### List Available Card Tokens](#idp245647_body)
You can list the existing card tokens attached to a specific card. Use the following parameters:
Description of Path Parameters
| Path Parameter | Description |
| --- | --- |
| card\_id | The ID of the card starting with **card\_**. |
###### List Available Card Tokens Request
* * Request
* // Request URL: GET https://sandboxapi.rapyd.net/v1/issuing/cards/:card\_id/card\_tokens
// Message body absent
###### List Available Card Tokens Response
* * Response
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "386fcaf5-d50c-43b0-9d12-ead3d3c0ef11"
},
"data": \[ \
{ \
"HashedTokenId": "p37Y9skr7289mUWKrCSss+L47yjDGkEcD5BOuYXRMV0=", \
"TokenIdLast4": "L011", \
"DeviceId": "TestDeviceId987654321011", \
"DeviceManufacturer": "LG", \
"DeviceLanguageCode": "is", \
"DeviceName": "G8 Feitur V", \
"CreationTime": "2019-04-01T00:00:00", \
"TokenRequestorId": "40010030273", \
"TokenRequestorName": "Apple Pay", \
"Status": "INACTIVE" \
}, \
{ \
"HashedTokenId": "WcOpDxmzhWN9SCp2nTf0mtIN+6DKHBr9/uNak/nTXg4=", \
"TokenIdLast4": "L012", \
"DeviceId": "TestDeviceId987654321012", \
"DeviceManufacturer": "LG", \
"DeviceLanguageCode": "is", \
"DeviceName": "G8 Feitur V", \
"CreationTime": "2019-04-01T00:00:00", \
"TokenRequestorId": "40010075001", \
"TokenRequestorName": "Google Pay", \
"Status": "SUSPENDED" \
}, \
{ \
"HashedTokenId": "rUIJkyoz4J8EvxsZuedskKjA+fOYluu0GRZXARd2ytE=", \
"TokenIdLast4": "L013", \
"DeviceId": "TestDeviceId987654321013", \
"DeviceManufacturer": "LG", \
"DeviceLanguageCode": "is", \
"DeviceName": "G8 Feitur V", \
"CreationTime": "2019-04-01T00:00:00", \
"TokenRequestorId": "40010051602", \
"TokenRequestorName": "Amazon", \
"Status": "ACTIVE" \
}, \
{ \
"HashedTokenId": "9Q5xEzliI1Iyx0FU4gWKML2YUnGEUuCGVAExDHjKsts=", \
"TokenIdLast4": "L014", \
"DeviceId": "TestDeviceId987654321014", \
"DeviceManufacturer": "LG", \
"DeviceLanguageCode": "is", \
"DeviceName": "G8 Feitur V", \
"CreationTime": "2019-04-01T00:00:00", \
"TokenRequestorId": "40010075839", \
"TokenRequestorName": "Netflix", \
"Status": "DEACTIVATED" \
} \
\]
}
[###### Change Token Status](#idp245688_body)
You can change the status of your card token to one of the following statuses:
* Active
* Pending
* Suspended
* Deactivated
Use the following path parameters and required fields in the request:
Description of Path Parameters
| Path Parameter | Description |
| --- | --- |
| activate | The token will be activated. |
| reactivate | The token will be reactivated. |
| suspend | The token will be suspended. |
**Note**: The `suspend` path parameter will be used in the example request below
Use the following required fields in the request:
Description of Required Fields
| Field | Description |
| --- | --- |
| hashed\_token\_id | A unique identifier for the token. |
| performed\_by | The user submitting the token status change. Character length: 50. |
| request\_reason | The reason for the token status change. Character length: 5 - 254. |
###### Change Token Status Request
* * Request
* // Request URL: POST https://sandboxapi.rapyd.net/v1/issuing/cards/:card\_id/card\_tokens/suspend
{
"hashed\_token\_id": "dB/xDjJzxcwruDMTMLmdjs7UZ7JW97CHKwmMgg9hk14=",
"performed\_by": "user name",
"request\_reason": "some reason"
}
###### Change Token Status Response
* * Response
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "60e0671a-cae9-4568-bb8c-8db58677dc46"
}
}
In this section:
Regulations developed for the [payment card industry](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_pci)
for data security and protection against fraud.
Search results
--------------
No results found
* [Prev](hosted-page-for-virtual-cards.html#idp245434)
* [Next](digital-wallet-provisioning.html#idp245445)
---
# Create Checkout Page
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [API Reference](api-reference.html)
* [Rapyd Collect](rapyd-collect-363484.html)
* [Checkout Page](checkout-page.html)
* Create Checkout Page
* [Prev](checkout-page.html)
* [Next](create-checkout-page.html#idp295515)
##### Create Checkout Page
Create a checkout page that makes a payment.
This method can be used by all clients without the need for PCI certification.
After the customer submits the information on the hosted page, Rapyd processes the request and sends you one or more webhooks, depending on the payment method and parameters of the request. See [Create Payment](create-payment.html "Create Payment")
. The [Payment Succeeded Webhook](payment-succeeded-webhook.html "Payment Succeeded Webhook")
is sent when the customer successfully submits the information on the hosted page.
### Note
* If you create the checkout page specifying the `customer` field, only the customer’s default payment method appears on the checkout page.
* The `amount` must be specified in either `amount` or the `amount` field of each item in the cart.
* For setting up digital wallet payments on a checkout page, see [Recurring Digital Wallet Payments](recurring-digital-wallet-payments.html "Recurring Digital Wallet Payments")
.
* If the payment method type is Google Pay, the customer must open the checkout page in a single browser window. On an Apple device, the customer must use Safari.
* To enable account funding transactions, contact [Rapyd Client Support](https://support.rapyd.net)
.
[###### Parameters](#idp295519_body)
[###### Request Header Parameters](#idp295521_body)
[###### Request Body Parameters](#idp295581_body)
[###### Response Parameters](#idp296271_body)
###### Code Samples
* * .NET
* using System;
using System.Text.Json;
namespace RapydApiRequestSample
{
class Program
{
static void Main(string\[\] args)
{
try
{
var requestObj = new
{
currency = "USD",
customer = "cus\_b3b8ad0174f4c415c663b35bcf542192",
metadata = new
{
merchant\_defined = true
},
amount = 10
};
string request = JsonSerializer.Serialize(requestObj);
string result = RapydApiRequestSample.Utilities.MakeRequest("POST", "/v1/checkout", request);
Console.WriteLine(result);
}
catch (Exception e)
{
Console.WriteLine("Error completing request: " + e.Message);
}
}
}
}
* * JavaScript
* const makeRequest = require('/utilities').makeRequest;
async function main() {
try {
const body = {
currency: 'USD',
customer: 'cus\_b3b8ad0174f4c415c663b35bcf542192',
metadata: {
merchant\_defined: true
},
amount: 10
};
const result = await makeRequest('POST', '/v1/checkout', body);
console.log(result);
} catch (error) {
console.error('Error completing request', error);
}
}
* * PHP
* /utilities.php";
$body = \[\
"currency" => "USD"\
"customer" => "cus\_b3b8ad0174f4c415c663b35bcf542192",\
"amount" => 10 \
\];
try {
$object = make\_request('post', '/v1/checkout', $body);
var\_dump($object);
} catch(Exception $e) {
echo "Error => $e";
}
?>
* * Python
* from pprint import pprint
from utilities import make\_request
checkout\_page = {
"amount": 100,
"complete\_payment\_url": "http://example.com/complete",
"country": "SG",
"currency": "SGD",
"customer": "cus\_9761efaa881b6edeab25e9fbfec1ddf5",
"error\_payment\_url": "http://example.com/error",
"merchant\_reference\_id": "0912-2021",
"language": "en",
"metadata": {
"merchant\_defined": True
},
"expiration": 1632027189,
"payment\_method\_types\_include": \[\
"sg\_grabpay\_ewallet"\
\]
}
result = make\_request(method='post', path='/v1/checkout', body=checkout\_page)
pprint(result)
* /v1/checkout
* Create Checkout Page for customer
* curl -X post
https://sandboxapi.rapyd.net/v1/checkout
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
-d '{
"amount": 100,
"complete\_payment\_url": "http://example.com/complete",
"country": "SG",
"currency": "SGD",
"customer": "cus\_9761efaa881b6edeab25e9fbfec1ddf5",
"error\_payment\_url": "http://example.com/error",
"merchant\_reference\_id": "0912-2021",
"language": "en",
"metadata": {
"merchant\_defined": true
},
"payment\_method\_types\_include": \[\
"sg\_grabpay\_ewallet"\
\],
"expiration": 1632027189
}
'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "b8f3e180-c7ea-4ac3-86f1-c47d93117cce"
},
"data": {
"id": "checkout\_b1284339d1dd677c8163bcea1c9cfcf2",
"status": "NEW",
"language": "en",
"merchant\_color": "323fff",
"merchant\_logo": null,
"merchant\_website": "https://rapyd.net",
"merchant\_customer\_support": {},
"merchant\_alias": "Rapyd",
"merchant\_terms": null,
"merchant\_privacy\_policy": null,
"page\_expiration": 1632645328,
"redirect\_url": "https://sandboxcheckout.rapyd.net?token=checkout\_b1284339d1dd677c8163bcea1c9cfcf2",
"merchant\_main\_button": "place\_your\_order",
"cancel\_checkout\_url": "https://rapyd.net",
"complete\_checkout\_url": "https://rapyd.net",
"country": "SG",
"currency": "SGD",
"amount": 100,
"payment": {
"id": null,
"amount": 100,
"original\_amount": 0,
"is\_partial": false,
"currency\_code": "SGD",
"country\_code": "SG",
"status": null,
"description": "Payment via Checkout",
"merchant\_reference\_id": "0912-2021",
"customer\_token": "cus\_9761efaa881b6edeab25e9fbfec1ddf5",
"payment\_method\_data": {},
"expiration": 1632027189,
"captured": false,
"refunded": false,
"refunded\_amount": 0,
"receipt\_email": null,
"redirect\_url": null,
"complete\_payment\_url": "http://example.com/complete",
"error\_payment\_url": "http://example.com/error",
"receipt\_number": null,
"flow\_type": null,
"address": null,
"statement\_descriptor": null,
"transaction\_id": null,
"created\_at": 0,
"updated\_at": 0,
"metadata": {
"merchant\_defined": true
},
"failure\_code": null,
"failure\_message": null,
"paid": false,
"paid\_at": 0,
"dispute": null,
"refunds": null,
"order": null,
"outcome": null,
"visual\_codes": {},
"textual\_codes": {},
"instructions": {},
"ewallet\_id": null,
"ewallets": \[\],
"payment\_method\_options": {},
"payment\_method\_type": null,
"payment\_method\_type\_category": null,
"fx\_rate": null,
"merchant\_requested\_currency": null,
"merchant\_requested\_amount": null,
"fixed\_side": null,
"payment\_fees": null,
"invoice": null,
"escrow": null,
"group\_payment": null,
"cancel\_reason": null,
"initiation\_type": "customer\_present",
"mid": null,
"next\_action": "not\_applicable"
},
"payment\_method\_type": null,
"payment\_method\_type\_categories": null,
"payment\_method\_types\_include": \[\
"sg\_grabpay\_ewallet"\
\],
"payment\_method\_types\_exclude": null,
"customer": "cus\_9761efaa881b6edeab25e9fbfec1ddf5",
"custom\_elements": {
"save\_card\_default": false,
"display\_description": false,
"payment\_fees\_display": true,
"merchant\_currency\_only": false,
"billing\_address\_collect": false,
"dynamic\_currency\_conversion": false
},
"timestamp": 1631435728,
"payment\_expiration": null,
"cart\_items": \[\],
"escrow": null,
"escrow\_release\_days": null
}
}
* Create Checkout Page for guest
* curl -X post
https://sandboxapi.rapyd.net/v1/checkout
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
-d '{
"amount": 123.45,
"complete\_payment\_url": "http://example.com/complete",
"country": "SG",
"currency": "SGD",
"error\_payment\_url": "http://example.com/error",
"merchant\_reference\_id": "0912-2021",
"language": "en",
"metadata": {
"merchant\_defined": true
},
"payment\_method\_types\_include": \[\
"sg\_grabpay\_ewallet"\
\],
"expiration": 1632027189
}
'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "4482961e-7732-49dc-8d0a-2c79491210a3"
},
"data": {
"id": "checkout\_408606a46b1e1e60507a2b2fc578143c",
"status": "NEW",
"language": "en",
"merchant\_color": "323fff",
"merchant\_logo": null,
"merchant\_website": "https://rapyd.net",
"merchant\_customer\_support": {},
"merchant\_alias": "Rapyd",
"merchant\_terms": null,
"merchant\_privacy\_policy": null,
"page\_expiration": 1632643036,
"redirect\_url": "https://sandboxcheckout.rapyd.net?token=checkout\_408606a46b1e1e60507a2b2fc578143c",
"merchant\_main\_button": "place\_your\_order",
"cancel\_checkout\_url": "https://rapyd.net",
"complete\_checkout\_url": "https://rapyd.net",
"country": "SG",
"currency": "SGD",
"amount": 123.45,
"payment": {
"id": null,
"amount": 123.45,
"original\_amount": 0,
"is\_partial": false,
"currency\_code": "SGD",
"country\_code": "SG",
"status": null,
"description": "Payment via Checkout",
"merchant\_reference\_id": "0912-2021",
"customer\_token": null,
"payment\_method\_data": {},
"expiration": 1632027189,
"captured": false,
"refunded": false,
"refunded\_amount": 0,
"receipt\_email": null,
"redirect\_url": null,
"complete\_payment\_url": "http://example.com/complete",
"error\_payment\_url": "http://example.com/error",
"receipt\_number": null,
"flow\_type": null,
"address": null,
"statement\_descriptor": null,
"transaction\_id": null,
"created\_at": 0,
"updated\_at": 0,
"metadata": {
"merchant\_defined": true
},
"failure\_code": null,
"failure\_message": null,
"paid": false,
"paid\_at": 0,
"dispute": null,
"refunds": null,
"order": null,
"outcome": null,
"visual\_codes": {},
"textual\_codes": {},
"instructions": {},
"ewallet\_id": null,
"ewallets": \[\],
"payment\_method\_options": {},
"payment\_method\_type": null,
"payment\_method\_type\_category": null,
"fx\_rate": null,
"merchant\_requested\_currency": null,
"merchant\_requested\_amount": null,
"fixed\_side": null,
"payment\_fees": null,
"invoice": null,
"escrow": null,
"group\_payment": null,
"cancel\_reason": null,
"initiation\_type": "customer\_present",
"mid": null,
"next\_action": "not\_applicable"
},
"payment\_method\_type": null,
"payment\_method\_type\_categories": null,
"payment\_method\_types\_include": \[\
"sg\_grabpay\_ewallet"\
\],
"payment\_method\_types\_exclude": null,
"customer": null,
"custom\_elements": {
"save\_card\_default": false,
"display\_description": false,
"payment\_fees\_display": true,
"merchant\_currency\_only": false,
"billing\_address\_collect": false,
"dynamic\_currency\_conversion": false
},
"timestamp": 1631433436,
"payment\_expiration": null,
"cart\_items": \[\],
"escrow": null,
"escrow\_release\_days": null
}
}
* Create Checkout Page using categories
* curl -X post
https://sandboxapi.rapyd.net/v1/checkout
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
-d '{
"amount": 100,
"complete\_payment\_url": "http://example.com/complete",
"country": "SG",
"currency": "SGD",
"error\_payment\_url": "http://example.com/error",
"merchant\_reference\_id": "0912-2021",
"language": "en",
"metadata": {
"merchant\_defined": true
},
"payment\_method\_type\_categories": \[\
"card",\
"cash"\
\]
}
'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "b8c00798-8b17-4b8b-8d93-d8fc487eba2b"
},
"data": {
"id": "checkout\_bf9648075ed09a2b793e288e659df17d",
"status": "NEW",
"language": "en",
"merchant\_color": "323fff",
"merchant\_logo": null,
"merchant\_website": "https://rapyd.net",
"merchant\_customer\_support": {},
"merchant\_alias": "Rapyd",
"merchant\_terms": null,
"merchant\_privacy\_policy": null,
"page\_expiration": 1632645913,
"redirect\_url": "https://sandboxcheckout.rapyd.net?token=checkout\_bf9648075ed09a2b793e288e659df17d",
"merchant\_main\_button": "place\_your\_order",
"cancel\_checkout\_url": "https://rapyd.net",
"complete\_checkout\_url": "https://rapyd.net",
"country": "SG",
"currency": "SGD",
"amount": 100,
"payment": {
"id": null,
"amount": 100,
"original\_amount": 0,
"is\_partial": false,
"currency\_code": "SGD",
"country\_code": "SG",
"status": null,
"description": "Payment via Checkout",
"merchant\_reference\_id": "0912-2021",
"customer\_token": null,
"payment\_method\_data": {},
"expiration": 0,
"captured": false,
"refunded": false,
"refunded\_amount": 0,
"receipt\_email": null,
"redirect\_url": null,
"complete\_payment\_url": "http://example.com/complete",
"error\_payment\_url": "http://example.com/error",
"receipt\_number": null,
"flow\_type": null,
"address": null,
"statement\_descriptor": null,
"transaction\_id": null,
"created\_at": 0,
"updated\_at": 0,
"metadata": {
"merchant\_defined": true
},
"failure\_code": null,
"failure\_message": null,
"paid": false,
"paid\_at": 0,
"dispute": null,
"refunds": null,
"order": null,
"outcome": null,
"visual\_codes": {},
"textual\_codes": {},
"instructions": {},
"ewallet\_id": null,
"ewallets": \[\],
"payment\_method\_options": {},
"payment\_method\_type": null,
"payment\_method\_type\_category": null,
"fx\_rate": null,
"merchant\_requested\_currency": null,
"merchant\_requested\_amount": null,
"fixed\_side": null,
"payment\_fees": null,
"invoice": null,
"escrow": null,
"group\_payment": null,
"cancel\_reason": null,
"initiation\_type": "customer\_present",
"mid": null,
"next\_action": "not\_applicable"
},
"payment\_method\_type": null,
"payment\_method\_type\_categories": \[\
"card",\
"cash"\
\],
"payment\_method\_types\_include": null,
"payment\_method\_types\_exclude": null,
"customer": null,
"custom\_elements": {
"save\_card\_default": false,
"display\_description": false,
"payment\_fees\_display": true,
"merchant\_currency\_only": false,
"billing\_address\_collect": false,
"dynamic\_currency\_conversion": false
},
"timestamp": 1631436313,
"payment\_expiration": null,
"cart\_items": \[\],
"escrow": null,
"escrow\_release\_days": null
}
}
* Create Checkout Page with additional fees
* curl -X post
https://sandboxapi.rapyd.net/v1/checkout
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
-d '{
"amount": 128.45,
"complete\_payment\_url": "http://example.net/complete",
"country": "SG",
"currency": "SGD",
"error\_payment\_url": "http://example.net/error",
"merchant\_reference\_id": "0912-2021",
"language": "en",
"requested\_currency": "USD",
"metadata": {
"merchant\_defined": true
},
"payment\_method\_type\_categories": \[\
"card"\
\],
"payment\_fees": {
"transaction\_fee": {
"calc\_type": "gross",
"value": 10,
"fee\_type": "percentage"
},
"fx\_fee": {
"calc\_type": "gross",
"value": 2
}
}
}
'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "b01d9001-e17a-4af7-b868-8d9bd83534ad"
},
"data": {
"id": "checkout\_46a632d38fe469a2962e7bd6b637baff",
"status": "NEW",
"language": "en",
"merchant\_color": "323fff",
"merchant\_logo": null,
"merchant\_website": "https://rapyd.net",
"merchant\_customer\_support": {},
"merchant\_alias": "Rapyd",
"merchant\_terms": null,
"merchant\_privacy\_policy": null,
"page\_expiration": 1632646186,
"redirect\_url": "https://sandboxcheckout.rapyd.net?token=checkout\_46a632d38fe469a2962e7bd6b637baff",
"merchant\_main\_button": "place\_your\_order",
"cancel\_checkout\_url": "https://rapyd.net",
"complete\_checkout\_url": "https://rapyd.net",
"country": "SG",
"currency": "SGD",
"amount": 128.45,
"payment": {
"id": null,
"amount": 128.45,
"original\_amount": 0,
"is\_partial": false,
"currency\_code": "SGD",
"country\_code": "SG",
"status": null,
"description": "Payment via Checkout",
"merchant\_reference\_id": "0912-2021",
"customer\_token": null,
"payment\_method\_data": {},
"expiration": 0,
"captured": false,
"refunded": false,
"refunded\_amount": 0,
"receipt\_email": null,
"redirect\_url": null,
"complete\_payment\_url": "http://example.net/complete",
"error\_payment\_url": "http://example.net/error",
"receipt\_number": null,
"flow\_type": null,
"address": null,
"statement\_descriptor": null,
"transaction\_id": null,
"created\_at": 0,
"updated\_at": 0,
"metadata": {
"merchant\_defined": true
},
"failure\_code": null,
"failure\_message": null,
"paid": false,
"paid\_at": 0,
"dispute": null,
"refunds": null,
"order": null,
"outcome": null,
"visual\_codes": {},
"textual\_codes": {},
"instructions": {},
"ewallet\_id": null,
"ewallets": \[\],
"payment\_method\_options": {},
"payment\_method\_type": null,
"payment\_method\_type\_category": null,
"fx\_rate": 1.301492,
"merchant\_requested\_currency": "USD",
"merchant\_requested\_amount": 110.53,
"fixed\_side": "buy",
"payment\_fees": {
"fx\_fee": {
"value": 2,
"calc\_type": "gross"
},
"net\_fees": null,
"gross\_fees": null,
"transaction\_fee": {
"value": 10,
"fee\_type": "percentage",
"calc\_type": "gross"
}
},
"invoice": null,
"escrow": null,
"group\_payment": null,
"cancel\_reason": null,
"initiation\_type": "customer\_present",
"mid": null,
"next\_action": "not\_applicable"
},
"payment\_method\_type": null,
"payment\_method\_type\_categories": \[\
"card"\
\],
"payment\_method\_types\_include": null,
"payment\_method\_types\_exclude": null,
"customer": null,
"custom\_elements": {
"save\_card\_default": false,
"display\_description": false,
"payment\_fees\_display": true,
"merchant\_currency\_only": false,
"billing\_address\_collect": false,
"dynamic\_currency\_conversion": false
},
"timestamp": 1631436586,
"payment\_expiration": null,
"cart\_items": \[\],
"escrow": null,
"escrow\_release\_days": null
}
}
* Create Checkout Page with Complete and Cancel URLs
* curl -X post
https://sandboxapi.rapyd.net/v1/checkout
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
-d '{
"amount": 223.48,
"complete\_payment\_url": "http://example.net/complete",
"complete\_checkout\_url": "http://example.net/complete\_checkout",
"cancel\_checkout\_url": "http://example.net/cancel\_checkout",
"country": "SG",
"currency": "SGD",
"error\_payment\_url": "http://example.net/error",
"merchant\_reference\_id": "0912-2021",
"language": "en",
"metadata": {
"merchant\_defined": true
},
"payment\_method\_type\_categories": \[\
"card"\
\]
}
'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "8fc0771e-f522-4b13-8ef2-90eddb075e2b"
},
"data": {
"id": "checkout\_38294f69e0b783fce134d9a1060beab2",
"status": "NEW",
"language": "en",
"merchant\_color": "323fff",
"merchant\_logo": null,
"merchant\_website": "https://rapyd.net",
"merchant\_customer\_support": {},
"merchant\_alias": "Rapyd",
"merchant\_terms": null,
"merchant\_privacy\_policy": null,
"page\_expiration": 1632647945,
"redirect\_url": "https://sandboxcheckout.rapyd.net?token=checkout\_38294f69e0b783fce134d9a1060beab2",
"merchant\_main\_button": "place\_your\_order",
"cancel\_checkout\_url": "http://example.net/cancel\_checkout",
"complete\_checkout\_url": "http://example.net/complete\_checkout",
"country": "SG",
"currency": "SGD",
"amount": 223.48,
"payment": {
"id": null,
"amount": 223.48,
"original\_amount": 0,
"is\_partial": false,
"currency\_code": "SGD",
"country\_code": "SG",
"status": null,
"description": "Payment via Checkout",
"merchant\_reference\_id": "0912-2021",
"customer\_token": null,
"payment\_method\_data": {},
"expiration": 0,
"captured": false,
"refunded": false,
"refunded\_amount": 0,
"receipt\_email": null,
"redirect\_url": null,
"complete\_payment\_url": "http://example.net/complete",
"error\_payment\_url": "http://example.net/error",
"receipt\_number": null,
"flow\_type": null,
"address": null,
"statement\_descriptor": null,
"transaction\_id": null,
"created\_at": 0,
"updated\_at": 0,
"metadata": {
"merchant\_defined": true
},
"failure\_code": null,
"failure\_message": null,
"paid": false,
"paid\_at": 0,
"dispute": null,
"refunds": null,
"order": null,
"outcome": null,
"visual\_codes": {},
"textual\_codes": {},
"instructions": {},
"ewallet\_id": null,
"ewallets": \[\],
"payment\_method\_options": {},
"payment\_method\_type": null,
"payment\_method\_type\_category": null,
"fx\_rate": null,
"merchant\_requested\_currency": null,
"merchant\_requested\_amount": null,
"fixed\_side": null,
"payment\_fees": null,
"invoice": null,
"escrow": null,
"group\_payment": null,
"cancel\_reason": null,
"initiation\_type": "customer\_present",
"mid": null,
"next\_action": "not\_applicable"
},
"payment\_method\_type": null,
"payment\_method\_type\_categories": \[\
"card"\
\],
"payment\_method\_types\_include": null,
"payment\_method\_types\_exclude": null,
"customer": null,
"custom\_elements": {
"save\_card\_default": false,
"display\_description": false,
"payment\_fees\_display": true,
"merchant\_currency\_only": false,
"billing\_address\_collect": false,
"dynamic\_currency\_conversion": false
},
"timestamp": 1631438345,
"payment\_expiration": null,
"cart\_items": \[\],
"escrow": null,
"escrow\_release\_days": null
}
}s
* Create Checkout Page with custom elements
* curl -X post
https://sandboxapi.rapyd.net/v1/checkout
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
-d '{
"amount": 127.95,
"complete\_payment\_url": "http://example.com/complete",
"country": "SG",
"currency": "SGD",
"error\_payment\_url": "http://example.com/error",
"merchant\_reference\_id": "0912-2021",
"language": "en",
"metadata": {
"merchant\_defined": true
},
"custom\_elements": {
"billing\_address\_collect": true,
"cardholder\_name": "John Doe"
}
}
'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "032d687c-c6f7-47af-b6d1-d7ce178d4d4a"
},
"data": {
"id": "checkout\_fd7dbfb7fb8bcfe0414de4222a12cf3f",
"status": "NEW",
"language": "en",
"merchant\_color": "323fff",
"merchant\_logo": null,
"merchant\_website": "https://rapyd.net",
"merchant\_customer\_support": {},
"merchant\_alias": "Doc Team",
"merchant\_terms": null,
"merchant\_privacy\_policy": null,
"page\_expiration": 1657546131,
"redirect\_url": "https://sandboxcheckout.rapyd.net?token=checkout\_fd7dbfb7fb8bcfe0414de4222a12cf3f",
"merchant\_main\_button": "place\_your\_order",
"cancel\_checkout\_url": "https://rapyd.net",
"complete\_checkout\_url": "https://rapyd.net",
"country": "SG",
"currency": "SGD",
"amount": 127.95,
"payment": {
"id": null,
"amount": 127.95,
"original\_amount": 0,
"is\_partial": false,
"currency\_code": "SGD",
"country\_code": "SG",
"status": null,
"description": "Payment via Checkout",
"merchant\_reference\_id": "0912-2021",
"customer\_token": null,
"payment\_method": null,
"payment\_method\_data": {},
"expiration": 0,
"captured": false,
"refunded": false,
"refunded\_amount": 0,
"receipt\_email": null,
"redirect\_url": null,
"complete\_payment\_url": "http://example.com/complete",
"error\_payment\_url": "http://example.com/error",
"receipt\_number": null,
"flow\_type": null,
"address": null,
"statement\_descriptor": null,
"transaction\_id": null,
"created\_at": 0,
"updated\_at": 0,
"metadata": {
"merchant\_defined": true
},
"failure\_code": null,
"failure\_message": null,
"paid": false,
"paid\_at": 0,
"dispute": null,
"refunds": null,
"order": null,
"outcome": null,
"visual\_codes": {},
"textual\_codes": {},
"instructions": {},
"ewallet\_id": null,
"ewallets": \[\],
"payment\_method\_options": {},
"payment\_method\_type": null,
"payment\_method\_type\_category": null,
"fx\_rate": null,
"merchant\_requested\_currency": null,
"merchant\_requested\_amount": null,
"fixed\_side": null,
"payment\_fees": null,
"invoice": null,
"escrow": null,
"group\_payment": null,
"cancel\_reason": null,
"initiation\_type": "customer\_present",
"mid": null,
"next\_action": "not\_applicable"
},
"payment\_method\_type": null,
"payment\_method\_type\_categories": null,
"payment\_method\_types\_include": null,
"payment\_method\_types\_exclude": null,
"customer": null,
"custom\_elements": {
"cardholder\_name": "John Doe",
"save\_card\_default": false,
"display\_description": false,
"payment\_fees\_display": true,
"merchant\_currency\_only": false,
"billing\_address\_collect": true,
"dynamic\_currency\_conversion": false
},
"timestamp": 1656336531,
"payment\_expiration": null,
"cart\_items": \[\],
"escrow": null,
"escrow\_release\_days": null
}
}
* Create Checkout Page with cart items
* curl -X post
https://sandboxapi.rapyd.net/v1/checkout
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
-d '{
"country": "SG",
"currency": "SGD",
"customer": "cus\_b1077c22ddd33ec36a13cf56849feeab",
"complete\_payment\_url": "http://example.com/complete",
"error\_payment\_url": "http://example.com/error",
"merchant\_reference\_id": "0314-2024",
"language": "en",
"expiration": 1711365790,
"cart\_items": \[\
{\
"name": "Bluetooth speaker model SJ-8097",\
"amount": 120.00,\
"percent\_off": 10,\
"quantity": 2\
},\
{\
"name": "Pack of rechargeable batteries model 90-P",\
"amount": 5,\
"amount\_off": 1,\
"quantity": 1\
}\
\],
"metadata": {
"merchant\_defined": true
}
}
'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "11564114-c490-4d0f-adf5-473882e0d9ae"
},
"data": {
"id": "checkout\_6887308e5d44f31389fef4220dbf2e13",
"status": "NEW",
"language": "en",
"merchant\_color": "3232ff",
"merchant\_logo": "https://iconslib.rapyd.net/merchant-logos/ohpc\_b52ae595fb6c963acd021c783daed7e3/Rapyd\_sign\_45cm.png",
"merchant\_website": "https://rapyd.net",
"merchant\_customer\_support": {
"url": "https://rapyd\_support.net",
"email": "rapydsupport@gmail.com",
"phone\_number": "555555555"
},
"merchant\_alias": "Rapyd",
"merchant\_terms": "https://rapyd\_support.net",
"merchant\_privacy\_policy": "https://rapyd\_privacy.net",
"page\_expiration": 1711545850,
"redirect\_url": "https://sandboxcheckout.rapyd.net/?token=checkout\_6887308e5d44f31389fef4220dbf2e13",
"merchant\_main\_button": "place\_your\_order",
"cancel\_checkout\_url": "https://example.com/cancel\_checkout",
"complete\_checkout\_url": "https://example.com/complete\_checkout",
"country": "SG",
"currency": "SGD",
"amount": 220,
"payment": {
"id": null,
"amount": 220,
"original\_amount": 0,
"is\_partial": false,
"currency\_code": "SGD",
"country\_code": "SG",
"status": null,
"description": "Payment via Checkout",
"merchant\_reference\_id": "0314-2024",
"customer\_token": "cus\_b1077c22ddd33ec36a13cf56849feeab",
"payment\_method": null,
"payment\_method\_data": {},
"expiration": 1711365790,
"captured": false,
"refunded": false,
"refunded\_amount": 0,
"receipt\_email": null,
"redirect\_url": null,
"complete\_payment\_url": "http://example.com/complete",
"error\_payment\_url": "http://example.com/error",
"receipt\_number": null,
"flow\_type": null,
"address": null,
"statement\_descriptor": null,
"transaction\_id": null,
"created\_at": 0,
"updated\_at": 0,
"metadata": {
"merchant\_defined": true
},
"failure\_code": null,
"failure\_message": null,
"paid": false,
"paid\_at": 0,
"dispute": null,
"refunds": null,
"order": null,
"outcome": null,
"visual\_codes": {},
"textual\_codes": {},
"instructions": {},
"ewallet\_id": null,
"ewallets": \[\],
"payment\_method\_options": {},
"payment\_method\_type": null,
"payment\_method\_type\_category": null,
"fx\_rate": null,
"merchant\_requested\_currency": null,
"merchant\_requested\_amount": null,
"fixed\_side": null,
"payment\_fees": null,
"invoice": null,
"escrow": null,
"group\_payment": null,
"cancel\_reason": null,
"initiation\_type": null,
"mid": null,
"next\_action": "not\_applicable"
},
"payment\_method\_type": null,
"payment\_method\_type\_categories": null,
"payment\_method\_types\_include": null,
"payment\_method\_types\_exclude": null,
"account\_funding\_transaction": null,
"customer": "cus\_b1077c22ddd33ec36a13cf56849feeab",
"custom\_elements": {
"save\_card\_default": false,
"display\_description": false,
"payment\_fees\_display": true,
"merchant\_currency\_only": false,
"billing\_address\_collect": false,
"dynamic\_currency\_conversion": false
},
"timestamp": 1710336250,
"payment\_expiration": null,
"cart\_items": \[\
{\
"name": "Bluetooth speaker model SJ-8097",\
"amount": 108,\
"quantity": 2,\
"image": null,\
"discount": 12,\
"percent\_off": 10\
},\
{\
"name": "Pack of rechargeable batteries model 90-P",\
"amount": 4,\
"quantity": 1,\
"image": null,\
"discount": 1,\
"amount\_off": 1\
}\
\],
"escrow": null,
"escrow\_release\_days": null
}
}
* Create Checkout Page with FX - fixed side buy
* curl -X post
https://sandboxapi.rapyd.net/v1/checkout
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
-d '{
"amount": 100,
"complete\_payment\_url": "http://example.com/complete",
"country": "SG",
"currency": "SGD",
"error\_payment\_url": "http://example.com/error",
"merchant\_reference\_id": "0912-2021",
"language": "en",
"requested\_currency": "USD",
"fixed\_side": "buy",
"metadata": {
"merchant\_defined": true
}
}
'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "c22d5662-08fc-4192-b035-06a54af5e82f"
},
"data": {
"id": "checkout\_0b84fee952f2c488364a5c1397a67054",
"status": "NEW",
"language": "en",
"merchant\_color": "323fff",
"merchant\_logo": null,
"merchant\_website": "https://rapyd.net",
"merchant\_customer\_support": {},
"merchant\_alias": "Rapyd",
"merchant\_terms": null,
"merchant\_privacy\_policy": null,
"page\_expiration": 1632653516,
"redirect\_url": "https://sandboxcheckout.rapyd.net?token=checkout\_0b84fee952f2c488364a5c1397a67054",
"merchant\_main\_button": "place\_your\_order",
"cancel\_checkout\_url": "https://rapyd.net",
"complete\_checkout\_url": "https://rapyd.net",
"country": "SG",
"currency": "SGD",
"amount": 100,
"payment": {
"id": null,
"amount": 100,
"original\_amount": 0,
"is\_partial": false,
"currency\_code": "SGD",
"country\_code": "SG",
"status": null,
"description": "Payment via Checkout",
"merchant\_reference\_id": "0912-2021",
"customer\_token": null,
"payment\_method\_data": {},
"expiration": 0,
"captured": false,
"refunded": false,
"refunded\_amount": 0,
"receipt\_email": null,
"redirect\_url": null,
"complete\_payment\_url": "http://example.com/complete",
"error\_payment\_url": "http://example.com/error",
"receipt\_number": null,
"flow\_type": null,
"address": null,
"statement\_descriptor": null,
"transaction\_id": null,
"created\_at": 0,
"updated\_at": 0,
"metadata": {
"merchant\_defined": true
},
"failure\_code": null,
"failure\_message": null,
"paid": false,
"paid\_at": 0,
"dispute": null,
"refunds": null,
"order": null,
"outcome": null,
"visual\_codes": {},
"textual\_codes": {},
"instructions": {},
"ewallet\_id": null,
"ewallets": \[\],
"payment\_method\_options": {},
"payment\_method\_type": null,
"payment\_method\_type\_category": null,
"fx\_rate": 1.301492,
"merchant\_requested\_currency": "USD",
"merchant\_requested\_amount": 76.83,
"fixed\_side": "buy",
"payment\_fees": null,
"invoice": null,
"escrow": null,
"group\_payment": null,
"cancel\_reason": null,
"initiation\_type": "customer\_present",
"mid": null,
"next\_action": "not\_applicable"
},
"payment\_method\_type": null,
"payment\_method\_type\_categories": null,
"payment\_method\_types\_include": null,
"payment\_method\_types\_exclude": null,
"customer": null,
"custom\_elements": {
"save\_card\_default": false,
"display\_description": false,
"payment\_fees\_display": true,
"merchant\_currency\_only": false,
"billing\_address\_collect": false,
"dynamic\_currency\_conversion": false
},
"timestamp": 1631443916,
"payment\_expiration": null,
"cart\_items": \[\],
"escrow": null,
"escrow\_release\_days": null
}
}
* Create Checkout Page with dynamic currency conversion
* curl -X post
https://sandboxapi.rapyd.net/v1/checkout
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
-d '{
"amount": 123.45,
"complete\_payment\_url": "http://example.com/complete",
"country": "SG",
"currency": "SGD",
"requested\_currency": "USD",
"error\_payment\_url": "http://example.com/error",
"merchant\_reference\_id": "0912-2021",
"language": "en",
"metadata": {
"merchant\_defined": true
},
"payment\_method\_type\_categories": \[\
"card"\
\],
"custom\_elements": {
"dynamic\_currency\_conversion": true
}
}
'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "5c49bd5b-2183-4478-aeb3-3ed35aad434d"
},
"data": {
"id": "checkout\_05d0cd0426f3aeee744ad389606237ce",
"status": "NEW",
"language": "en",
"merchant\_color": "323fff",
"merchant\_logo": null,
"merchant\_website": "https://rapyd.net",
"merchant\_customer\_support": {},
"merchant\_alias": "Rapyd",
"merchant\_terms": null,
"merchant\_privacy\_policy": null,
"page\_expiration": 1632653843,
"redirect\_url": "https://sandboxcheckout.rapyd.net?token=checkout\_05d0cd0426f3aeee744ad389606237ce",
"merchant\_main\_button": "place\_your\_order",
"cancel\_checkout\_url": "https://rapyd.net",
"complete\_checkout\_url": "https://rapyd.net",
"country": "SG",
"currency": "SGD",
"amount": 123.45,
"payment": {
"id": null,
"amount": 123.45,
"original\_amount": 0,
"is\_partial": false,
"currency\_code": "SGD",
"country\_code": "SG",
"status": null,
"description": "Payment via Checkout",
"merchant\_reference\_id": "0912-2021",
"customer\_token": null,
"payment\_method\_data": {},
"expiration": 0,
"captured": false,
"refunded": false,
"refunded\_amount": 0,
"receipt\_email": null,
"redirect\_url": null,
"complete\_payment\_url": "http://example.com/complete",
"error\_payment\_url": "http://example.com/error",
"receipt\_number": null,
"flow\_type": null,
"address": null,
"statement\_descriptor": null,
"transaction\_id": null,
"created\_at": 0,
"updated\_at": 0,
"metadata": {
"merchant\_defined": true
},
"failure\_code": null,
"failure\_message": null,
"paid": false,
"paid\_at": 0,
"dispute": null,
"refunds": null,
"order": null,
"outcome": null,
"visual\_codes": {},
"textual\_codes": {},
"instructions": {},
"ewallet\_id": null,
"ewallets": \[\],
"payment\_method\_options": {},
"payment\_method\_type": null,
"payment\_method\_type\_category": null,
"fx\_rate": 1.301492,
"merchant\_requested\_currency": "USD",
"merchant\_requested\_amount": 94.85,
"fixed\_side": "buy",
"payment\_fees": null,
"invoice": null,
"escrow": null,
"group\_payment": null,
"cancel\_reason": null,
"initiation\_type": "customer\_present",
"mid": null,
"next\_action": "not\_applicable"
},
"payment\_method\_type": null,
"payment\_method\_type\_categories": \[\
"card"\
\],
"payment\_method\_types\_include": null,
"payment\_method\_types\_exclude": null,
"customer": null,
"custom\_elements": {
"save\_card\_default": false,
"display\_description": false,
"payment\_fees\_display": true,
"merchant\_currency\_only": false,
"billing\_address\_collect": false,
"dynamic\_currency\_conversion": true
},
"timestamp": 1631444243,
"payment\_expiration": null,
"cart\_items": \[\],
"escrow": null,
"escrow\_release\_days": null
}
}
* Create Checkout Page using payment method type
* curl -X post
https://sandboxapi.rapyd.net/v1/checkout
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
-d '{
"amount": 100,
"complete\_payment\_url": "http://example.com/complete",
"country": "SG",
"currency": "SGD",
"customer": "cus\_9761efaa881b6edeab25e9fbfec1ddf5",
"error\_payment\_url": "http://example.com/error",
"merchant\_reference\_id": "0912-2021",
"language": "en",
"metadata": {
"merchant\_defined": true
},
"payment\_method\_type": "sg\_grabpay\_ewallet"
}
'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "9925fcbc-1be5-4ebd-a676-c1919ed93ee7"
},
"data": {
"id": "checkout\_f01e66e29d482641026fc73756364f45",
"status": "NEW",
"language": "en",
"merchant\_color": "323fff",
"merchant\_logo": null,
"merchant\_website": "https://rapyd.net",
"merchant\_customer\_support": {},
"merchant\_alias": "Rapyd",
"merchant\_terms": null,
"merchant\_privacy\_policy": null,
"page\_expiration": 1632654049,
"redirect\_url": "https://sandboxcheckout.rapyd.net?token=checkout\_f01e66e29d482641026fc73756364f45",
"merchant\_main\_button": "place\_your\_order",
"cancel\_checkout\_url": "https://rapyd.net",
"complete\_checkout\_url": "https://rapyd.net",
"country": "SG",
"currency": "SGD",
"amount": 100,
"payment": {
"id": null,
"amount": 100,
"original\_amount": 0,
"is\_partial": false,
"currency\_code": "SGD",
"country\_code": "SG",
"status": null,
"description": "Payment via Checkout",
"merchant\_reference\_id": "0912-2021",
"customer\_token": "cus\_9761efaa881b6edeab25e9fbfec1ddf5",
"payment\_method\_data": {},
"expiration": 0,
"captured": false,
"refunded": false,
"refunded\_amount": 0,
"receipt\_email": null,
"redirect\_url": null,
"complete\_payment\_url": "http://example.com/complete",
"error\_payment\_url": "http://example.com/error",
"receipt\_number": null,
"flow\_type": null,
"address": null,
"statement\_descriptor": null,
"transaction\_id": null,
"created\_at": 0,
"updated\_at": 0,
"metadata": {
"merchant\_defined": true
},
"failure\_code": null,
"failure\_message": null,
"paid": false,
"paid\_at": 0,
"dispute": null,
"refunds": null,
"order": null,
"outcome": null,
"visual\_codes": {},
"textual\_codes": {},
"instructions": {},
"ewallet\_id": null,
"ewallets": \[\],
"payment\_method\_options": {},
"payment\_method\_type": null,
"payment\_method\_type\_category": null,
"fx\_rate": null,
"merchant\_requested\_currency": null,
"merchant\_requested\_amount": null,
"fixed\_side": null,
"payment\_fees": null,
"invoice": null,
"escrow": null,
"group\_payment": null,
"cancel\_reason": null,
"initiation\_type": "customer\_present",
"mid": null,
"next\_action": "not\_applicable"
},
"payment\_method\_type": "sg\_grabpay\_ewallet",
"payment\_method\_type\_categories": null,
"payment\_method\_types\_include": null,
"payment\_method\_types\_exclude": null,
"customer": "cus\_9761efaa881b6edeab25e9fbfec1ddf5",
"custom\_elements": {
"save\_card\_default": false,
"display\_description": false,
"payment\_fees\_display": true,
"merchant\_currency\_only": false,
"billing\_address\_collect": false,
"dynamic\_currency\_conversion": false
},
"timestamp": 1631444449,
"payment\_expiration": null,
"cart\_items": \[\],
"escrow": null,
"escrow\_release\_days": null
}
}
* Create Checkout Page with 'payment\_method\_types\_exclude'
* curl -X post
https://sandboxapi.rapyd.net/v1/checkout
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
-d '{
"amount": 100,
"complete\_payment\_url": "http://example.com/complete",
"country": "SG",
"currency": "SGD",
"customer": "cus\_9761efaa881b6edeab25e9fbfec1ddf5",
"error\_payment\_url": "http://example.com/error",
"merchant\_reference\_id": "0912-2021",
"language": "en",
"metadata": {
"merchant\_defined": true
},
"payment\_method\_types\_exclude": \[\
"sg\_grabpay\_ewallet"\
\]
}
'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "6d64996a-37f5-464f-8e50-d6867e55d702"
},
"data": {
"id": "checkout\_ec71384b612dce403fc171e35ea40b92",
"status": "NEW",
"language": "en",
"merchant\_color": "323fff",
"merchant\_logo": null,
"merchant\_website": "https://rapyd.net",
"merchant\_customer\_support": {},
"merchant\_alias": "Rapyd",
"merchant\_terms": null,
"merchant\_privacy\_policy": null,
"page\_expiration": 1632654242,
"redirect\_url": "https://sandboxcheckout.rapyd.net?token=checkout\_ec71384b612dce403fc171e35ea40b92",
"merchant\_main\_button": "place\_your\_order",
"cancel\_checkout\_url": "https://rapyd.net",
"complete\_checkout\_url": "https://rapyd.net",
"country": "SG",
"currency": "SGD",
"amount": 100,
"payment": {
"id": null,
"amount": 100,
"original\_amount": 0,
"is\_partial": false,
"currency\_code": "SGD",
"country\_code": "SG",
"status": null,
"description": "Payment via Checkout",
"merchant\_reference\_id": "0912-2021",
"customer\_token": "cus\_9761efaa881b6edeab25e9fbfec1ddf5",
"payment\_method\_data": {},
"expiration": 0,
"captured": false,
"refunded": false,
"refunded\_amount": 0,
"receipt\_email": null,
"redirect\_url": null,
"complete\_payment\_url": "http://example.com/complete",
"error\_payment\_url": "http://example.com/error",
"receipt\_number": null,
"flow\_type": null,
"address": null,
"statement\_descriptor": null,
"transaction\_id": null,
"created\_at": 0,
"updated\_at": 0,
"metadata": {
"merchant\_defined": true
},
"failure\_code": null,
"failure\_message": null,
"paid": false,
"paid\_at": 0,
"dispute": null,
"refunds": null,
"order": null,
"outcome": null,
"visual\_codes": {},
"textual\_codes": {},
"instructions": {},
"ewallet\_id": null,
"ewallets": \[\],
"payment\_method\_options": {},
"payment\_method\_type": null,
"payment\_method\_type\_category": null,
"fx\_rate": null,
"merchant\_requested\_currency": null,
"merchant\_requested\_amount": null,
"fixed\_side": null,
"payment\_fees": null,
"invoice": null,
"escrow": null,
"group\_payment": null,
"cancel\_reason": null,
"initiation\_type": "customer\_present",
"mid": null,
"next\_action": "not\_applicable"
},
"payment\_method\_type": null,
"payment\_method\_type\_categories": null,
"payment\_method\_types\_include": null,
"payment\_method\_types\_exclude": \[\
"sg\_grabpay\_ewallet"\
\],
"customer": "cus\_9761efaa881b6edeab25e9fbfec1ddf5",
"custom\_elements": {
"save\_card\_default": false,
"display\_description": false,
"payment\_fees\_display": true,
"merchant\_currency\_only": false,
"billing\_address\_collect": false,
"dynamic\_currency\_conversion": false
},
"timestamp": 1631444642,
"payment\_expiration": null,
"cart\_items": \[\],
"escrow": null,
"escrow\_release\_days": null
}
}
* Create Checkout Page with escrow
* curl -X post
https://sandboxapi.rapyd.net/v1/checkout
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
-d '{
"amount": 110.45,
"complete\_payment\_url": "http://example.com/complete",
"country": "US",
"currency": "USD",
"error\_payment\_url": "http://example.com/error",
"merchant\_reference\_id": "0912-2021",
"payment\_method\_type": "us\_mastercard\_card",
"ewallets": \[\
{\
"ewallet": "ewallet\_c1943cfeda5f98247ab117e5d2648861"\
}\
\],
"escrow": true,
"escrow\_release\_days": "5",
"metadata": {
"merchant\_defined": "true"
}
}
'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "7c5d0335-8bfe-4fe3-818d-8d327b6a84ee"
},
"data": {
"id": "checkout\_36bee8cd84a2ca9a45ac1ff255816069",
"status": "NEW",
"language": null,
"merchant\_color": "323fff",
"merchant\_logo": null,
"merchant\_website": "https://rapyd.net",
"merchant\_customer\_support": {},
"merchant\_alias": "Rapyd",
"merchant\_terms": null,
"merchant\_privacy\_policy": null,
"page\_expiration": 1632654594,
"redirect\_url": "https://sandboxcheckout.rapyd.net?token=checkout\_36bee8cd84a2ca9a45ac1ff255816069",
"merchant\_main\_button": "place\_your\_order",
"cancel\_checkout\_url": "https://rapyd.net",
"complete\_checkout\_url": "https://rapyd.net",
"country": "US",
"currency": "USD",
"amount": 110.45,
"payment": {
"id": null,
"amount": 110.45,
"original\_amount": 0,
"is\_partial": false,
"currency\_code": "USD",
"country\_code": "US",
"status": null,
"description": "Payment via Checkout",
"merchant\_reference\_id": "0912-2021",
"customer\_token": null,
"payment\_method\_data": {},
"expiration": 0,
"captured": false,
"refunded": false,
"refunded\_amount": 0,
"receipt\_email": null,
"redirect\_url": null,
"complete\_payment\_url": "http://example.com/complete",
"error\_payment\_url": "http://example.com/error",
"receipt\_number": null,
"flow\_type": null,
"address": null,
"statement\_descriptor": null,
"transaction\_id": null,
"created\_at": 0,
"updated\_at": 0,
"metadata": {
"merchant\_defined": "true"
},
"failure\_code": null,
"failure\_message": null,
"paid": false,
"paid\_at": 0,
"dispute": null,
"refunds": null,
"order": null,
"outcome": null,
"visual\_codes": {},
"textual\_codes": {},
"instructions": {},
"ewallets": \[\
{\
"ewallet": "ewallet\_c1943cfeda5f98247ab117e5d2648861",\
"amount": 110.45,\
"percent": 100\
}\
\],
"payment\_method\_options": {},
"payment\_method\_type": null,
"payment\_method\_type\_category": null,
"fx\_rate": null,
"merchant\_requested\_currency": null,
"merchant\_requested\_amount": null,
"fixed\_side": null,
"payment\_fees": null,
"invoice": null,
"escrow": null,
"group\_payment": null,
"cancel\_reason": null,
"initiation\_type": "customer\_present",
"mid": null,
"next\_action": "not\_applicable"
},
"payment\_method\_type": "us\_mastercard\_card",
"payment\_method\_type\_categories": null,
"payment\_method\_types\_include": null,
"payment\_method\_types\_exclude": null,
"customer": null,
"custom\_elements": {
"save\_card\_default": false,
"display\_description": false,
"payment\_fees\_display": true,
"merchant\_currency\_only": false,
"billing\_address\_collect": false,
"dynamic\_currency\_conversion": false
},
"timestamp": 1631444994,
"payment\_expiration": null,
"cart\_items": \[\],
"escrow": true,
"escrow\_release\_days": 5
}
}
* Create Checkout Page - authorization only
* curl -X post
https://sandboxapi.rapyd.net/v1/checkout
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
-d '{
"amount": 123.45,
"complete\_payment\_url": "http://example.com/complete",
"country": "BR",
"currency": "BRL",
"error\_payment\_url": "http://example.com/error",
"merchant\_reference\_id": "0912-2021",
"metadata": {
"merchant\_defined": true
},
"payment\_method\_type": "br\_credit\_hipercard\_card",
"capture": false
}
'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "66aa1041-1057-4476-acdd-f879fc4a889c"
},
"data": {
"id": "checkout\_f731deff32b343b26de22ae70ef6f0d2",
"status": "NEW",
"language": null,
"merchant\_color": "323fff",
"merchant\_logo": null,
"merchant\_website": "https://rapyd.net",
"merchant\_customer\_support": {},
"merchant\_alias": "Rapyd",
"merchant\_terms": null,
"merchant\_privacy\_policy": null,
"page\_expiration": 1632654991,
"redirect\_url": "https://sandboxcheckout.rapyd.net?token=checkout\_f731deff32b343b26de22ae70ef6f0d2",
"merchant\_main\_button": "place\_your\_order",
"cancel\_checkout\_url": "https://rapyd.net",
"complete\_checkout\_url": "https://rapyd.net",
"country": "BR",
"currency": "BRL",
"amount": 123.45,
"payment": {
"id": null,
"amount": 123.45,
"original\_amount": 0,
"is\_partial": false,
"currency\_code": "BRL",
"country\_code": "BR",
"status": null,
"description": "Payment via Checkout",
"merchant\_reference\_id": "0912-2021",
"customer\_token": null,
"payment\_method\_data": {},
"expiration": 0,
"captured": false,
"refunded": false,
"refunded\_amount": 0,
"receipt\_email": null,
"redirect\_url": null,
"complete\_payment\_url": "http://example.com/complete",
"error\_payment\_url": "http://example.com/error",
"receipt\_number": null,
"flow\_type": null,
"address": null,
"statement\_descriptor": null,
"transaction\_id": null,
"created\_at": 0,
"updated\_at": 0,
"metadata": {
"merchant\_defined": true
},
"failure\_code": null,
"failure\_message": null,
"paid": false,
"paid\_at": 0,
"dispute": null,
"refunds": null,
"order": null,
"outcome": null,
"visual\_codes": {},
"textual\_codes": {},
"instructions": {},
"ewallet\_id": null,
"ewallets": \[\],
"payment\_method\_options": {},
"payment\_method\_type": null,
"payment\_method\_type\_category": null,
"fx\_rate": null,
"merchant\_requested\_currency": null,
"merchant\_requested\_amount": null,
"fixed\_side": null,
"payment\_fees": null,
"invoice": null,
"escrow": null,
"group\_payment": null,
"cancel\_reason": null,
"initiation\_type": "customer\_present",
"mid": null,
"next\_action": "not\_applicable"
},
"payment\_method\_type": "br\_credit\_hipercard\_card",
"payment\_method\_type\_categories": null,
"payment\_method\_types\_include": null,
"payment\_method\_types\_exclude": null,
"customer": null,
"custom\_elements": {
"save\_card\_default": false,
"display\_description": false,
"payment\_fees\_display": true,
"merchant\_currency\_only": false,
"billing\_address\_collect": false,
"dynamic\_currency\_conversion": false
},
"timestamp": 1631445391,
"payment\_expiration": null,
"cart\_items": \[\],
"escrow": null,
"escrow\_release\_days": null
}
}
* Create Checkout Page split by amount
* curl -X post
https://sandboxapi.rapyd.net/v1/checkout
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
-d '{
"amount": 250,
"complete\_payment\_url": "http://example.com/complete",
"country": "US",
"currency": "USD",
"error\_payment\_url": "http://example.com/error",
"merchant\_reference\_id": "0209-2023",
"metadata": {
"merchant\_defined": true
},
"payment\_method\_type": "us\_debit\_visa\_card",
"ewallets": \[\
{\
"ewallet": "ewallet\_c67c44ec60d5c2e62480aa7c76b3f8b4",\
"amount": 200\
},\
{\
"ewallet": "ewallet\_3cd928611934717f283df049a2c7c17e",\
"amount": 50\
}\
\]
}
'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "57a5f28f-70cd-4a8b-9848-b463dff67480"
},
"data": {
"id": "checkout\_eb40b93a667e85c6bae5c4f71a270161",
"status": "NEW",
"language": null,
"merchant\_color": "323fff",
"merchant\_logo": null,
"merchant\_website": "https://rapyd.net",
"merchant\_customer\_support": {},
"merchant\_alias": "Doc Team",
"merchant\_terms": null,
"merchant\_privacy\_policy": null,
"page\_expiration": 1677161917,
"redirect\_url": "https://sandboxcheckout.rapyd.net?token=checkout\_eb40b93a667e85c6bae5c4f71a270161",
"merchant\_main\_button": "place\_your\_order",
"cancel\_checkout\_url": "https://rapyd.net",
"complete\_checkout\_url": "https://rapyd.net",
"country": "US",
"currency": "USD",
"amount": 250,
"payment": {
"id": null,
"amount": 250,
"original\_amount": 0,
"is\_partial": false,
"currency\_code": "USD",
"country\_code": "US",
"status": null,
"description": "Payment via Checkout",
"merchant\_reference\_id": "0209-2023",
"customer\_token": null,
"payment\_method": null,
"payment\_method\_data": {},
"expiration": 0,
"captured": false,
"refunded": false,
"refunded\_amount": 0,
"receipt\_email": null,
"redirect\_url": null,
"complete\_payment\_url": "http://example.com/complete",
"error\_payment\_url": "http://example.com/error",
"receipt\_number": null,
"flow\_type": null,
"address": null,
"statement\_descriptor": null,
"transaction\_id": null,
"created\_at": 0,
"updated\_at": 0,
"metadata": {
"merchant\_defined": true
},
"failure\_code": null,
"failure\_message": null,
"paid": false,
"paid\_at": 0,
"dispute": null,
"refunds": null,
"order": null,
"outcome": null,
"visual\_codes": {},
"textual\_codes": {},
"instructions": {},
"ewallet\_id": null,
"ewallets": \[\
{\
"ewallet": "ewallet\_c1943cfeda5f98247ab117e5d2648861",\
"amount": 200,\
"percent": 80\
},\
{\
"ewallet": "ewallet\_755b0fd11fd22b33328fff7d30f3ce30",\
"amount": 50,\
"percent": 20\
}\
\],
"payment\_method\_options": {},
"payment\_method\_type": null,
"payment\_method\_type\_category": null,
"fx\_rate": null,
"merchant\_requested\_currency": null,
"merchant\_requested\_amount": null,
"fixed\_side": null,
"payment\_fees": null,
"invoice": null,
"escrow": null,
"group\_payment": null,
"cancel\_reason": null,
"initiation\_type": "customer\_present",
"mid": null,
"next\_action": "not\_applicable"
},
"payment\_method\_type": "us\_debit\_visa\_card",
"payment\_method\_type\_categories": null,
"payment\_method\_types\_include": null,
"payment\_method\_types\_exclude": null,
"account\_funding\_transaction": null,
"customer": null,
"custom\_elements": {
"save\_card\_default": false,
"display\_description": false,
"payment\_fees\_display": true,
"merchant\_currency\_only": false,
"billing\_address\_collect": false,
"dynamic\_currency\_conversion": false
},
"timestamp": 1675952317,
"payment\_expiration": null,
"cart\_items": \[\],
"escrow": null,
"escrow\_release\_days": null
}
}
* Create Checkout Page split by percentage
* curl -X post
https://sandboxapi.rapyd.net/v1/checkout
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
-d '{
"amount": 20.00,
"complete\_payment\_url": "http://example.com/complete",
"country": "US",
"currency": "USD",
"error\_payment\_url": "http://example.com/error",
"merchant\_reference\_id": "0912-2021",
"metadata": {
"merchant\_defined": true
},
"payment\_method\_type": "us\_visa\_card",
"ewallets": \[\
{\
"ewallet": "ewallet\_c67c44ec60d5c2e62480aa7c76b3f8b4",\
"percentage": 12.05\
},\
{\
"ewallet": "ewallet\_3801e782955b29955445586a2405a5db",\
"percentage": 25\
},\
{\
"ewallet": "ewallet\_3cd928611934717f283df049a2c7c17e",\
"percentage": null\
}\
\]
}
'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "5872a459-e4be-4277-8ea1-70caa6bf8561"
},
"data": {
"id": "checkout\_7665538188563c9d987a2a7770b8c6db",
"status": "NEW",
"language": null,
"merchant\_color": "323fff",
"merchant\_logo": null,
"merchant\_website": "https://rapyd.net",
"merchant\_customer\_support": {},
"merchant\_alias": "Rapyd",
"merchant\_terms": null,
"merchant\_privacy\_policy": null,
"page\_expiration": 1632655648,
"redirect\_url": "https://sandboxcheckout.rapyd.net?token=checkout\_7665538188563c9d987a2a7770b8c6db",
"merchant\_main\_button": "place\_your\_order",
"cancel\_checkout\_url": "https://rapyd.net",
"complete\_checkout\_url": "https://rapyd.net",
"country": "US",
"currency": "USD",
"amount": 20,
"payment": {
"id": null,
"amount": 20,
"original\_amount": 0,
"is\_partial": false,
"currency\_code": "USD",
"country\_code": "US",
"status": null,
"description": "Payment via Checkout",
"merchant\_reference\_id": "0912-2021",
"customer\_token": null,
"payment\_method\_data": {},
"expiration": 0,
"captured": false,
"refunded": false,
"refunded\_amount": 0,
"receipt\_email": null,
"redirect\_url": null,
"complete\_payment\_url": "http://example.com/complete",
"error\_payment\_url": "http://example.com/error",
"receipt\_number": null,
"flow\_type": null,
"address": null,
"statement\_descriptor": null,
"transaction\_id": null,
"created\_at": 0,
"updated\_at": 0,
"metadata": {
"merchant\_defined": true
},
"failure\_code": null,
"failure\_message": null,
"paid": false,
"paid\_at": 0,
"dispute": null,
"refunds": null,
"order": null,
"outcome": null,
"visual\_codes": {},
"textual\_codes": {},
"instructions": {},
"ewallet\_id": null,
"ewallets": \[\
{\
"ewallet": "ewallet\_c67c44ec60d5c2e62480aa7c76b3f8b4",\
"amount": 2.41,\
"percent": 12.05\
},\
{\
"ewallet": "ewallet\_3801e782955b29955445586a2405a5db",\
"amount": 5,\
"percent": 25\
},\
{\
"ewallet": "ewallet\_3cd928611934717f283df049a2c7c17e",\
"amount": 12.59,\
"percent": 62.95\
}\
\],
"payment\_method\_options": {},
"payment\_method\_type": null,
"payment\_method\_type\_category": null,
"fx\_rate": null,
"merchant\_requested\_currency": null,
"merchant\_requested\_amount": null,
"fixed\_side": null,
"payment\_fees": null,
"invoice": null,
"escrow": null,
"group\_payment": null,
"cancel\_reason": null,
"initiation\_type": "customer\_present",
"mid": null,
"next\_action": "not\_applicable"
},
"payment\_method\_type": "us\_visa\_card",
"payment\_method\_type\_categories": null,
"payment\_method\_types\_include": null,
"payment\_method\_types\_exclude": null,
"customer": null,
"custom\_elements": {
"save\_card\_default": false,
"display\_description": false,
"payment\_fees\_display": true,
"merchant\_currency\_only": false,
"billing\_address\_collect": false,
"dynamic\_currency\_conversion": false
},
"timestamp": 1631446048,
"payment\_expiration": null,
"cart\_items": \[\],
"escrow": null,
"escrow\_release\_days": null
}
}
* Create Checkout Page with FX - fixed side sell
* curl -X post
https://sandboxapi.rapyd.net/v1/checkout
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
-d '{
"amount": 100,
"complete\_payment\_url": "http://example.com/complete",
"country": "SG",
"currency": "SGD",
"error\_payment\_url": "http://example.com/error",
"merchant\_reference\_id": "0912-2021",
"language": "en",
"requested\_currency": "USD",
"fixed\_side": "sell",
"metadata": {
"merchant\_defined": true
}
}
'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "79608b10-b34c-479b-bb19-fe142fc42135"
},
"data": {
"id": "checkout\_402f993b81c304fda4a0e36567705eed",
"status": "NEW",
"language": "en",
"merchant\_color": "323fff",
"merchant\_logo": null,
"merchant\_website": "https://rapyd.net",
"merchant\_customer\_support": {},
"merchant\_alias": "Rapyd",
"merchant\_terms": null,
"merchant\_privacy\_policy": null,
"page\_expiration": 1632653693,
"redirect\_url": "https://sandboxcheckout.rapyd.net?token=checkout\_402f993b81c304fda4a0e36567705eed",
"merchant\_main\_button": "place\_your\_order",
"cancel\_checkout\_url": "https://rapyd.net",
"complete\_checkout\_url": "https://rapyd.net",
"country": "SG",
"currency": "SGD",
"amount": 100,
"payment": {
"id": null,
"amount": 100,
"original\_amount": 0,
"is\_partial": false,
"currency\_code": "SGD",
"country\_code": "SG",
"status": null,
"description": "Payment via Checkout",
"merchant\_reference\_id": "0912-2021",
"customer\_token": null,
"payment\_method\_data": {},
"expiration": 0,
"captured": false,
"refunded": false,
"refunded\_amount": 0,
"receipt\_email": null,
"redirect\_url": null,
"complete\_payment\_url": "http://example.com/complete",
"error\_payment\_url": "http://example.com/error",
"receipt\_number": null,
"flow\_type": null,
"address": null,
"statement\_descriptor": null,
"transaction\_id": null,
"created\_at": 0,
"updated\_at": 0,
"metadata": {
"merchant\_defined": true
},
"failure\_code": null,
"failure\_message": null,
"paid": false,
"paid\_at": 0,
"dispute": null,
"refunds": null,
"order": null,
"outcome": null,
"visual\_codes": {},
"textual\_codes": {},
"instructions": {},
"ewallet\_id": null,
"ewallets": \[\],
"payment\_method\_options": {},
"payment\_method\_type": null,
"payment\_method\_type\_category": null,
"fx\_rate": 0.722939,
"merchant\_requested\_currency": "USD",
"merchant\_requested\_amount": 100,
"fixed\_side": "sell",
"payment\_fees": null,
"invoice": null,
"escrow": null,
"group\_payment": null,
"cancel\_reason": null,
"initiation\_type": "customer\_present",
"mid": null,
"next\_action": "not\_applicable"
},
"payment\_method\_type": null,
"payment\_method\_type\_categories": null,
"payment\_method\_types\_include": null,
"payment\_method\_types\_exclude": null,
"customer": null,
"custom\_elements": {
"save\_card\_default": false,
"display\_description": false,
"payment\_fees\_display": true,
"merchant\_currency\_only": false,
"billing\_address\_collect": false,
"dynamic\_currency\_conversion": false
},
"timestamp": 1631444093,
"payment\_expiration": null,
"cart\_items": \[\],
"escrow": null,
"escrow\_release\_days": null
}
}
* Create Checkout Page with page expiration
* curl -X post
https://sandboxapi.rapyd.net/v1/checkout
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
-d '{
"amount": 100,
"complete\_payment\_url": "http://example.com/complete",
"country": "SG",
"currency": "SGD",
"error\_payment\_url": "http://example.com/error",
"merchant\_reference\_id": "0912-2021",
"metadata": {
"merchant\_defined": true
},
"page\_expiration": 1632027189
}
'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "8556381b-b946-4d1f-bfd5-169fbe5bb9c7"
},
"data": {
"id": "checkout\_39941080d6ccb872616b76a034bcf1a1",
"status": "NEW",
"language": null,
"merchant\_color": "323fff",
"merchant\_logo": null,
"merchant\_website": "https://rapyd.net",
"merchant\_customer\_support": {},
"merchant\_alias": "Rapyd",
"merchant\_terms": null,
"merchant\_privacy\_policy": null,
"page\_expiration": 1632027189,
"redirect\_url": "https://sandboxcheckout.rapyd.net?token=checkout\_39941080d6ccb872616b76a034bcf1a1",
"merchant\_main\_button": "place\_your\_order",
"cancel\_checkout\_url": "https://rapyd.net",
"complete\_checkout\_url": "https://rapyd.net",
"country": "SG",
"currency": "SGD",
"amount": 100,
"payment": {
"id": null,
"amount": 100,
"original\_amount": 0,
"is\_partial": false,
"currency\_code": "SGD",
"country\_code": "SG",
"status": null,
"description": "Payment via Checkout",
"merchant\_reference\_id": "0912-2021",
"customer\_token": null,
"payment\_method\_data": {},
"expiration": 0,
"captured": false,
"refunded": false,
"refunded\_amount": 0,
"receipt\_email": null,
"redirect\_url": null,
"complete\_payment\_url": "http://example.com/complete",
"error\_payment\_url": "http://example.com/error",
"receipt\_number": null,
"flow\_type": null,
"address": null,
"statement\_descriptor": null,
"transaction\_id": null,
"created\_at": 0,
"updated\_at": 0,
"metadata": {
"merchant\_defined": true
},
"failure\_code": null,
"failure\_message": null,
"paid": false,
"paid\_at": 0,
"dispute": null,
"refunds": null,
"order": null,
"outcome": null,
"visual\_codes": {},
"textual\_codes": {},
"instructions": {},
"ewallet\_id": null,
"ewallets": \[\],
"payment\_method\_options": {},
"payment\_method\_type": null,
"payment\_method\_type\_category": null,
"fx\_rate": null,
"merchant\_requested\_currency": null,
"merchant\_requested\_amount": null,
"fixed\_side": null,
"payment\_fees": null,
"invoice": null,
"escrow": null,
"group\_payment": null,
"cancel\_reason": null,
"initiation\_type": "customer\_present",
"mid": null,
"next\_action": "not\_applicable"
},
"payment\_method\_type": null,
"payment\_method\_type\_categories": null,
"payment\_method\_types\_include": null,
"payment\_method\_types\_exclude": null,
"customer": null,
"custom\_elements": {
"save\_card\_default": false,
"display\_description": false,
"payment\_fees\_display": true,
"merchant\_currency\_only": false,
"billing\_address\_collect": false,
"dynamic\_currency\_conversion": false
},
"timestamp": 1631446556,
"payment\_expiration": null,
"cart\_items": \[\],
"escrow": null,
"escrow\_release\_days": null
}
}
* Create Checkout Page with payment expiration
* curl -X post
https://sandboxapi.rapyd.net/v1/checkout
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
-d '{
"amount": 100,
"complete\_payment\_url": "http://example.com/complete",
"country": "SG",
"currency": "SGD",
"error\_payment\_url": "http://example.com/error",
"merchant\_reference\_id": "0912-2021",
"metadata": {
"merchant\_defined": true
},
"payment\_expiration": 604800
}
'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "d3eb0d10-d3ee-424e-8bd1-f568b00238bc"
},
"data": {
"id": "checkout\_1f659e4cce61e1d8c881e6bb5a8e1ffc",
"status": "NEW",
"language": null,
"merchant\_color": "323fff",
"merchant\_logo": null,
"merchant\_website": "https://rapyd.net",
"merchant\_customer\_support": {},
"merchant\_alias": "Rapyd",
"merchant\_terms": null,
"merchant\_privacy\_policy": null,
"page\_expiration": 1632656479,
"redirect\_url": "https://sandboxcheckout.rapyd.net?token=checkout\_1f659e4cce61e1d8c881e6bb5a8e1ffc",
"merchant\_main\_button": "place\_your\_order",
"cancel\_checkout\_url": "https://rapyd.net",
"complete\_checkout\_url": "https://rapyd.net",
"country": "SG",
"currency": "SGD",
"amount": 100,
"payment": {
"id": null,
"amount": 100,
"original\_amount": 0,
"is\_partial": false,
"currency\_code": "SGD",
"country\_code": "SG",
"status": null,
"description": "Payment via Checkout",
"merchant\_reference\_id": "0912-2021",
"customer\_token": null,
"payment\_method\_data": {},
"expiration": 0,
"captured": false,
"refunded": false,
"refunded\_amount": 0,
"receipt\_email": null,
"redirect\_url": null,
"complete\_payment\_url": "http://example.com/complete",
"error\_payment\_url": "http://example.com/error",
"receipt\_number": null,
"flow\_type": null,
"address": null,
"statement\_descriptor": null,
"transaction\_id": null,
"created\_at": 0,
"updated\_at": 0,
"metadata": {
"merchant\_defined": true
},
"failure\_code": null,
"failure\_message": null,
"paid": false,
"paid\_at": 0,
"dispute": null,
"refunds": null,
"order": null,
"outcome": null,
"visual\_codes": {},
"textual\_codes": {},
"instructions": {},
"ewallet\_id": null,
"ewallets": \[\],
"payment\_method\_options": {},
"payment\_method\_type": null,
"payment\_method\_type\_category": null,
"fx\_rate": null,
"merchant\_requested\_currency": null,
"merchant\_requested\_amount": null,
"fixed\_side": null,
"payment\_fees": null,
"invoice": null,
"escrow": null,
"group\_payment": null,
"cancel\_reason": null,
"initiation\_type": "customer\_present",
"mid": null,
"next\_action": "not\_applicable"
},
"payment\_method\_type": null,
"payment\_method\_type\_categories": null,
"payment\_method\_types\_include": null,
"payment\_method\_types\_exclude": null,
"customer": null,
"custom\_elements": {
"save\_card\_default": false,
"display\_description": false,
"payment\_fees\_display": true,
"merchant\_currency\_only": false,
"billing\_address\_collect": false,
"dynamic\_currency\_conversion": false
},
"timestamp": 1631446879,
"payment\_expiration": 604800,
"cart\_items": \[\],
"escrow": null,
"escrow\_release\_days": null
}
}
* Create Checkout Page - Card with requested currency
* curl -X post
https://sandboxapi.rapyd.net/v1/checkout
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
-d '{
"amount": 100.00,
"complete\_payment\_url": "http://example.com/complete",
"country": "SG",
"currency": "SGD",
"error\_payment\_url": "http://example.com/error",
"merchant\_reference\_id": "1003-2021",
"requested\_currency": "USD",
"metadata": {
"merchant\_defined": true
},
"payment\_method\_type\_categories": \[\
"card"\
\]
}
'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "6e8b51b2-411c-4a24-bc5a-e99c9ffcc274"
},
"data": {
"id": "checkout\_407c08def4a3e234bb5496c96a60ba6d",
"status": "NEW",
"language": null,
"merchant\_color": "323fff",
"merchant\_logo": null,
"merchant\_website": "https://rapyd.net",
"merchant\_customer\_support": {},
"merchant\_alias": "Rapyd",
"merchant\_terms": null,
"merchant\_privacy\_policy": null,
"page\_expiration": 1634476018,
"redirect\_url": "https://sandboxcheckout.rapyd.net?token=checkout\_407c08def4a3e234bb5496c96a60ba6d",
"merchant\_main\_button": "place\_your\_order",
"cancel\_checkout\_url": "https://rapyd.net",
"complete\_checkout\_url": "https://rapyd.net",
"country": "SG",
"currency": "SGD",
"amount": 100,
"payment": {
"id": null,
"amount": 100,
"original\_amount": 0,
"is\_partial": false,
"currency\_code": "SGD",
"country\_code": "SG",
"status": null,
"description": "Payment via Checkout",
"merchant\_reference\_id": "1003-2021",
"customer\_token": null,
"payment\_method\_data": {},
"expiration": 0,
"captured": false,
"refunded": false,
"refunded\_amount": 0,
"receipt\_email": null,
"redirect\_url": null,
"complete\_payment\_url": "http://example.com/complete",
"error\_payment\_url": "http://example.com/error",
"receipt\_number": null,
"flow\_type": null,
"address": null,
"statement\_descriptor": null,
"transaction\_id": null,
"created\_at": 0,
"updated\_at": 0,
"metadata": {
"merchant\_defined": true
},
"failure\_code": null,
"failure\_message": null,
"paid": false,
"paid\_at": 0,
"dispute": null,
"refunds": null,
"order": null,
"outcome": null,
"visual\_codes": {},
"textual\_codes": {},
"instructions": {},
"ewallet\_id": null,
"ewallets": \[\],
"payment\_method\_options": {},
"payment\_method\_type": null,
"payment\_method\_type\_category": null,
"fx\_rate": 1.317332,
"merchant\_requested\_currency": "USD",
"merchant\_requested\_amount": 75.91,
"fixed\_side": "buy",
"payment\_fees": null,
"invoice": null,
"escrow": null,
"group\_payment": null,
"cancel\_reason": null,
"initiation\_type": "customer\_present",
"mid": null,
"next\_action": "not\_applicable"
},
"payment\_method\_type": null,
"payment\_method\_type\_categories": \[\
"card"\
\],
"payment\_method\_types\_include": null,
"payment\_method\_types\_exclude": null,
"customer": null,
"custom\_elements": {
"save\_card\_default": false,
"display\_description": false,
"payment\_fees\_display": true,
"merchant\_currency\_only": false,
"billing\_address\_collect": false,
"dynamic\_currency\_conversion": false
},
"timestamp": 1633266418,
"payment\_expiration": null,
"cart\_items": \[\],
"escrow": null,
"escrow\_release\_days": null
}
}
* Create Checkout Page - Card with requested currency and fees
* curl -X post
https://sandboxapi.rapyd.net/v1/checkout
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
-d '{
"amount": 100,
"complete\_payment\_url": "http://example.com/complete",
"country": "SG",
"currency": "SGD",
"error\_payment\_url": "http://example.com/error",
"merchant\_reference\_id": "1007-2021",
"requested\_currency": "USD",
"metadata": {
"merchant\_defined": true
},
"payment\_method\_type\_categories": \[\
"card"\
\],
"payment\_fees": {
"transaction\_fee": {
"calc\_type": "gross",
"value": 10,
"fee\_type": "percentage"
},
"fx\_fee": {
"calc\_type": "gross",
"value": 2
}
}
}
'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "8c23f60a-969e-414b-a995-5a2e5a574426"
},
"data": {
"id": "checkout\_5c4313c6b51fd9e7e77dc1a8555329d1",
"status": "NEW",
"language": null,
"merchant\_color": "323fff",
"merchant\_logo": null,
"merchant\_website": "https://rapyd.net",
"merchant\_customer\_support": {},
"merchant\_alias": "Rapyd",
"merchant\_terms": null,
"merchant\_privacy\_policy": null,
"page\_expiration": 1634811166,
"redirect\_url": "https://sandboxcheckout.rapyd.net?token=checkout\_5c4313c6b51fd9e7e77dc1a8555329d1",
"merchant\_main\_button": "place\_your\_order",
"cancel\_checkout\_url": "https://rapyd.net",
"complete\_checkout\_url": "https://rapyd.net",
"country": "SG",
"currency": "SGD",
"amount": 100,
"payment": {
"id": null,
"amount": 100,
"original\_amount": 0,
"is\_partial": false,
"currency\_code": "SGD",
"country\_code": "SG",
"status": null,
"description": "Payment via Checkout",
"merchant\_reference\_id": "1007-2021",
"customer\_token": null,
"payment\_method\_data": {},
"expiration": 0,
"captured": false,
"refunded": false,
"refunded\_amount": 0,
"receipt\_email": null,
"redirect\_url": null,
"complete\_payment\_url": "http://example.com/complete",
"error\_payment\_url": "http://example.com/error",
"receipt\_number": null,
"flow\_type": null,
"address": null,
"statement\_descriptor": null,
"transaction\_id": null,
"created\_at": 0,
"updated\_at": 0,
"metadata": {
"merchant\_defined": true
},
"failure\_code": null,
"failure\_message": null,
"paid": false,
"paid\_at": 0,
"dispute": null,
"refunds": null,
"order": null,
"outcome": null,
"visual\_codes": {},
"textual\_codes": {},
"instructions": {},
"ewallet\_id": null,
"ewallets": \[\],
"payment\_method\_options": {},
"payment\_method\_type": null,
"payment\_method\_type\_category": null,
"fx\_rate": 1.3182,
"merchant\_requested\_currency": "USD",
"merchant\_requested\_amount": 84.96,
"fixed\_side": "buy",
"payment\_fees": {
"fx\_fee": {
"value": 2,
"calc\_type": "gross"
},
"net\_fees": null,
"gross\_fees": null,
"transaction\_fee": {
"value": 10,
"fee\_type": "percentage",
"calc\_type": "gross"
}
},
"invoice": null,
"escrow": null,
"group\_payment": null,
"cancel\_reason": null,
"initiation\_type": "customer\_present",
"mid": null,
"next\_action": "not\_applicable"
},
"payment\_method\_type": null,
"payment\_method\_type\_categories": \[\
"card"\
\],
"payment\_method\_types\_include": null,
"payment\_method\_types\_exclude": null,
"customer": null,
"custom\_elements": {
"save\_card\_default": false,
"display\_description": false,
"payment\_fees\_display": true,
"merchant\_currency\_only": false,
"billing\_address\_collect": false,
"dynamic\_currency\_conversion": false
},
"timestamp": 1633601566,
"payment\_expiration": null,
"cart\_items": \[\],
"escrow": null,
"escrow\_release\_days": null
}
}
* Create Checkout Page with multiple payment method categories
* curl -X post
https://sandboxapi.rapyd.net/v1/checkout
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
-d '{
"amount": 123.45,
"complete\_payment\_url": "http://example.com/complete",
"country": "SG",
"currency": "SGD",
"error\_payment\_url": "http://example.com/error",
"merchant\_reference\_id": "1007-2021",
"metadata": {
"merchant\_defined": true
},
"payment\_method\_type\_categories": \[\
"cash",\
"card",\
"ewallet"\
\]
}
'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "4ade4b47-79ef-4190-bba6-ec0b790ecaeb"
},
"data": {
"id": "checkout\_117e89c8b0cfba65e70e34396156cb01",
"status": "NEW",
"language": null,
"merchant\_color": "323fff",
"merchant\_logo": null,
"merchant\_website": "https://rapyd.net",
"merchant\_customer\_support": {},
"merchant\_alias": "Rapyd",
"merchant\_terms": null,
"merchant\_privacy\_policy": null,
"page\_expiration": 1634813300,
"redirect\_url": "https://sandboxcheckout.rapyd.net?token=checkout\_117e89c8b0cfba65e70e34396156cb01",
"merchant\_main\_button": "place\_your\_order",
"cancel\_checkout\_url": "https://rapyd.net",
"complete\_checkout\_url": "https://rapyd.net",
"country": "SG",
"currency": "SGD",
"amount": 123.45,
"payment": {
"id": null,
"amount": 123.45,
"original\_amount": 0,
"is\_partial": false,
"currency\_code": "SGD",
"country\_code": "SG",
"status": null,
"description": "Payment via Checkout",
"merchant\_reference\_id": "1007-2021",
"customer\_token": null,
"payment\_method\_data": {},
"expiration": 0,
"captured": false,
"refunded": false,
"refunded\_amount": 0,
"receipt\_email": null,
"redirect\_url": null,
"complete\_payment\_url": "http://example.com/complete",
"error\_payment\_url": "http://example.com/error",
"receipt\_number": null,
"flow\_type": null,
"address": null,
"statement\_descriptor": null,
"transaction\_id": null,
"created\_at": 0,
"updated\_at": 0,
"metadata": {
"merchant\_defined": true
},
"failure\_code": null,
"failure\_message": null,
"paid": false,
"paid\_at": 0,
"dispute": null,
"refunds": null,
"order": null,
"outcome": null,
"visual\_codes": {},
"textual\_codes": {},
"instructions": {},
"ewallet\_id": null,
"ewallets": \[\],
"payment\_method\_options": {},
"payment\_method\_type": null,
"payment\_method\_type\_category": null,
"fx\_rate": null,
"merchant\_requested\_currency": null,
"merchant\_requested\_amount": null,
"fixed\_side": null,
"payment\_fees": null,
"invoice": null,
"escrow": null,
"group\_payment": null,
"cancel\_reason": null,
"initiation\_type": "customer\_present",
"mid": null,
"next\_action": "not\_applicable"
},
"payment\_method\_type": null,
"payment\_method\_type\_categories": \[\
"cash",\
"card",\
"ewallet"\
\],
"payment\_method\_types\_include": null,
"payment\_method\_types\_exclude": null,
"customer": null,
"custom\_elements": {
"save\_card\_default": false,
"display\_description": false,
"payment\_fees\_display": true,
"merchant\_currency\_only": false,
"billing\_address\_collect": false,
"dynamic\_currency\_conversion": false
},
"timestamp": 1633603700,
"payment\_expiration": null,
"cart\_items": \[\],
"escrow": null,
"escrow\_release\_days": null
}
}
* Create Checkout Page with merchant fields
* curl -X post
https://sandboxapi.rapyd.net/v1/checkout
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
-d '{
"amount": 10,
"currency": "COP",
"country": "CO",
"merchant\_fields": {
"co\_cash\_cash": {
"required\_fields": {
"tax": 7,
"documentnumber": "654987575"
},
"payment\_method\_options": {}
}
}
}
'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "38d78b3f-fa37-46a2-84e8-e195c57fcb28"
},
"data": {
"id": "checkout\_57b1366b899d01f02964874512ba555a",
"status": "NEW",
"language": null,
"merchant\_color": "e8dcff",
"merchant\_logo": "https://iconslib.rapyd.net/merchant-logos/ohpc\_bc12.png",
"merchant\_website": "https://rapyd.net",
"merchant\_customer\_support": {
"url": "https://rapyd.net",
"email": "johndoe@rapyd.net",
"phone\_number": "555555555"
},
"merchant\_alias": "Rapyd",
"merchant\_terms": "https://rapyd.net",
"merchant\_privacy\_policy": "https://rapyd.net",
"page\_expiration": 1668606927,
"redirect\_url": "https://checkout.rapyd.net?token=checkout\_57b1366b899d01f02964874512ba555a",
"merchant\_main\_button": "place\_your\_order",
"cancel\_checkout\_url": "https://rapyd.net",
"complete\_checkout\_url": "https://rapyd.net",
"country": "CO",
"currency": "COP",
"amount": 10,
"payment": {
"id": null,
"amount": 10,
"original\_amount": 0,
"is\_partial": false,
"currency\_code": "COP",
"country\_code": "CO",
"status": null,
"description": "Payment via Checkout",
"merchant\_reference\_id": null,
"customer\_token": null,
"payment\_method": null,
"payment\_method\_data": {},
"expiration": 0,
"captured": false,
"refunded": false,
"refunded\_amount": 0,
"receipt\_email": null,
"redirect\_url": null,
"complete\_payment\_url": null,
"error\_payment\_url": null,
"receipt\_number": null,
"flow\_type": null,
"address": null,
"statement\_descriptor": null,
"transaction\_id": null,
"created\_at": 0,
"updated\_at": 0,
"metadata": null,
"failure\_code": null,
"failure\_message": null,
"paid": false,
"paid\_at": 0,
"dispute": null,
"refunds": null,
"order": null,
"outcome": null,
"visual\_codes": {},
"textual\_codes": {},
"instructions": {},
"ewallet\_id": null,
"ewallets": \[\],
"payment\_method\_options": {},
"payment\_method\_type": null,
"payment\_method\_type\_category": null,
"fx\_rate": null,
"merchant\_requested\_currency": null,
"merchant\_requested\_amount": null,
"fixed\_side": null,
"payment\_fees": null,
"invoice": null,
"escrow": null,
"group\_payment": null,
"cancel\_reason": null,
"initiation\_type": "customer\_present",
"mid": null,
"next\_action": "not\_applicable"
},
"payment\_method\_type": null,
"payment\_method\_type\_categories": null,
"payment\_method\_types\_include": null,
"payment\_method\_types\_exclude": null,
"account\_funding\_transaction": null,
"customer": null,
"custom\_elements": {
"save\_card\_default": false,
"display\_description": false,
"payment\_fees\_display": true,
"merchant\_currency\_only": false,
"billing\_address\_collect": false,
"dynamic\_currency\_conversion": false
},
"timestamp": 1667397328,
"payment\_expiration": null,
"cart\_items": \[\],
"escrow": null,
"escrow\_release\_days": null
}
}
* Create Checkout Page - Account Funding Transaction - 'person' wallet
* curl -X post
https://sandboxapi.rapyd.net/v1/checkout
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
-d '{
"country": "AT",
"currency": "EUR",
"amount": "100",
"account\_funding\_transaction": {
"ewallet": "ewallet\_d2ab10025f4da04a5442ea264fd98f53",
"payment\_method\_types": \["at\_mastercard\_card"\]
}
}
'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "cdee23c4-6a06-45b9-a1e5-28e30a78ae89"
},
"data": {
"id": "checkout\_b8f18ef475ad1934d896770b0fb85c65",
"status": "NEW",
"language": null,
"merchant\_color": "e8dcff",
"merchant\_logo": "https://iconslib.rapyd.net/merchant-logos/ohpc\_8df12e51102d26bdc7e2321201120.jpg",
"merchant\_website": "https://rapyd.net",
"merchant\_customer\_support": {
"url": "https://www.rapyd.com",
"email": "johndoe@rapyd.net",
"phone\_number": "55555555555"
},
"merchant\_alias": "rapyd",
"merchant\_terms": "https://www.termsfeed.com/terms-conditions-generator/",
"merchant\_privacy\_policy": "https://www.privacypolicies.com/blog/privacy-policy-template/",
"page\_expiration": 1668597423,
"redirect\_url": "https://sboxcheckout.rapyd.net?token=checkout\_b8f18ef475ad1934d896770b0fb85c65",
"merchant\_main\_button": "place\_your\_order",
"cancel\_checkout\_url": "https://rapyd.net",
"complete\_checkout\_url": "https://rapyd.net",
"country": "AT",
"currency": "EUR",
"amount": 100,
"payment": {
"id": null,
"amount": 100,
"original\_amount": 0,
"is\_partial": false,
"currency\_code": "EUR",
"country\_code": "AT",
"status": null,
"description": "Payment via Checkout",
"merchant\_reference\_id": null,
"customer\_token": null,
"payment\_method": null,
"payment\_method\_data": {},
"expiration": 0,
"captured": false,
"refunded": false,
"refunded\_amount": 0,
"receipt\_email": null,
"redirect\_url": null,
"complete\_payment\_url": null,
"error\_payment\_url": null,
"receipt\_number": null,
"flow\_type": null,
"address": null,
"statement\_descriptor": null,
"transaction\_id": null,
"created\_at": 0,
"updated\_at": 0,
"metadata": null,
"failure\_code": null,
"failure\_message": null,
"paid": false,
"paid\_at": 0,
"dispute": null,
"refunds": null,
"order": null,
"outcome": null,
"visual\_codes": {},
"textual\_codes": {},
"instructions": {},
"ewallet\_id": null,
"ewallets": \[\],
"payment\_method\_options": {},
"payment\_method\_type": null,
"payment\_method\_type\_category": null,
"fx\_rate": null,
"merchant\_requested\_currency": null,
"merchant\_requested\_amount": null,
"fixed\_side": null,
"payment\_fees": null,
"invoice": null,
"escrow": null,
"group\_payment": null,
"cancel\_reason": null,
"initiation\_type": "customer\_present",
"mid": null,
"next\_action": "not\_applicable"
},
"payment\_method\_type": null,
"payment\_method\_type\_categories": null,
"payment\_method\_types\_include": null,
"payment\_method\_types\_exclude": null,
"account\_funding\_transaction": {
"ewallet": "ewallet\_d2ab10025f4da04a5442ea264fd98f53",
"payment\_method\_types": \["at\_mastercard\_card"\]
},
"customer": null,
"custom\_elements": {
"save\_card\_default": false,
"display\_description": false,
"payment\_fees\_display": true,
"merchant\_currency\_only": false,
"billing\_address\_collect": false,
"dynamic\_currency\_conversion": false
},
"timestamp": 1667387823,
"payment\_expiration": null,
"cart\_items": \[\],
"escrow": null,
"escrow\_release\_days": null
}
}
* Create Checkout Page - Required Customer Fields
* curl -X post
https://sandboxapi.rapyd.net/v1/checkout
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
-d '
{
"country": "gb",
"currency": "gbp",
"amount": "10",
"custom\_elements": {
"required\_customer\_fields": \[\
"name",\
"email",\
"phone\_number",\
"address"\
\]
}
}
'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "2fe1887a-8db5-4c26-9674-b9c85a278dcb"
},
"data": {
"id": "checkout\_72a2ba224fa5d0a2ea9469d1c742d7c4",
"status": "NEW",
"language": null,
"merchant\_color": "324cff",
"merchant\_logo": "https://iconslib.rapyd.net/merchant-logos/ohpc\_9251592457fc1d7c11a7d02882a6e085/Pikachu.jpg",
"merchant\_website": "https://www.rapyd.net",
"merchant\_customer\_support": {
"url": "https://www.rapyd.net",
"email": "morank@rapyd.net",
"phone\_number": "523-444444444"
},
"merchant\_alias": "rapyd",
"merchant\_terms": "https://www.terms.com",
"merchant\_privacy\_policy": "https://www.privacy.com",
"page\_expiration": 1719744493,
"redirect\_url": "https://sandboxcheckout.rapyd.net/?token=checkout\_72a2ba224fa5d0a2ea9469d1c742d7c4",
"merchant\_main\_button": "place\_your\_order",
"cancel\_checkout\_url": "https://www.rapyd.net",
"complete\_checkout\_url": "https://www.rapyd.net",
"country": "GB",
"currency": "GBP",
"amount": 10,
"payment": {
"id": null,
"amount": 10,
"original\_amount": 0,
"is\_partial": false,
"currency\_code": "GBP",
"country\_code": "GB",
"status": null,
"description": "Payment via Checkout",
"merchant\_reference\_id": null,
"customer\_token": null,
"payment\_method": null,
"payment\_method\_data": {},
"expiration": 0,
"captured": false,
"refunded": false,
"refunded\_amount": 0,
"receipt\_email": null,
"redirect\_url": null,
"complete\_payment\_url": null,
"error\_payment\_url": null,
"receipt\_number": null,
"flow\_type": null,
"address": null,
"statement\_descriptor": null,
"transaction\_id": null,
"created\_at": 0,
"updated\_at": 0,
"metadata": null,
"failure\_code": null,
"failure\_message": null,
"paid": false,
"paid\_at": 0,
"dispute": null,
"refunds": null,
"order": null,
"outcome": null,
"visual\_codes": {},
"textual\_codes": {},
"instructions": {},
"ewallet\_id": null,
"ewallets": \[\],
"payment\_method\_options": {},
"payment\_method\_type": null,
"payment\_method\_type\_category": null,
"fx\_rate": null,
"merchant\_requested\_currency": null,
"merchant\_requested\_amount": null,
"fixed\_side": null,
"payment\_fees": null,
"invoice": null,
"escrow": null,
"group\_payment": null,
"cancel\_reason": null,
"initiation\_type": null,
"mid": null,
"next\_action": "not\_applicable"
},
"payment\_method\_type": null,
"payment\_method\_type\_categories": null,
"payment\_method\_types\_include": null,
"payment\_method\_types\_exclude": null,
"account\_funding\_transaction": null,
"customer": null,
"custom\_elements": {
"save\_card\_default": false,
"display\_description": false,
"payment\_fees\_display": true,
"merchant\_currency\_only": false,
"billing\_address\_collect": false,
"required\_customer\_fields": \[\
"name",\
"email",\
"phone\_number",\
"address"\
\],
"dynamic\_currency\_conversion": false
},
"timestamp": 1718534893,
"payment\_expiration": null,
"cart\_items": \[\],
"escrow": null,
"escrow\_release\_days": null
}
}
* Create Checkout Page - Payment Method Required Fields
* curl -X post
https://sandboxapi.rapyd.net/v1/checkout
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
-d '
{
"country":"IS",
"amount": 10,
"payment\_method": {
"type": "is\_visa\_card",
"fields": {
"number": "4111111111111111",
"expiration\_month": "12",
"expiration\_year": "24",
"cvv": "566",
"name": "John Doe"
}
},
"currency": "ISK",
"payment\_method\_options": {
"3d\_required": true
},
"payment\_method\_required\_fields": {
"is\_visa\_card": {
"payment\_method\_options": \[\
"cvv"\
\]
}
},
"ewallet": "ewallet\_4a2ba015651f6f5e877536413a36dd07",
"capture": false,
"expiration": 1739859548,
"error\_payment\_url": "https://support.rapyd.net/hc/en-us",
"complete\_payment\_url": "https://www.rapyd.net",
"description": "payment - small amount"
}
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "b94114d8-e5cf-4fb3-be2d-5a1279991c64"
},
"data": {
"id": "checkout\_9faa98751f4c8bf9150505d7193e0f13",
"status": "NEW",
"language": null,
"merchant\_color": "323fff",
"merchant\_logo": null,
"merchant\_website": "https://example1234.net",
"merchant\_customer\_support": {
"url": "https://example1234.net",
"email": "support@example1234.net",
"phone\_number": "121255551213"
},
"merchant\_alias": "Doc Team",
"merchant\_terms": "https://example1234.net/terms\_and\_conditions",
"merchant\_privacy\_policy": "https://example1234.net/privacy\_policy",
"page\_expiration": 1727598176,
"redirect\_url": "https://sandboxcheckout.rapyd.net/?token=checkout\_9faa98751f4c8bf9150505d7193e0f13",
"merchant\_main\_button": "place\_your\_order",
"recurrence\_type": null,
"cancel\_checkout\_url": "https://example1234.net",
"complete\_checkout\_url": "https://example1234.net",
"country": "IS",
"currency": "ISK",
"amount": 10,
"payment": {
"id": null,
"amount": 10,
"original\_amount": 0,
"is\_partial": false,
"currency\_code": "ISK",
"country\_code": "IS",
"status": null,
"description": "payment - small amount",
"merchant\_reference\_id": null,
"customer\_token": null,
"payment\_method": {
"type": "is\_visa\_card",
"fields": {
"cvv": "566",
"name": "John Doe",
"number": "4111111111111111",
"expiration\_year": "24",
"expiration\_month": "12"
}
},
"payment\_method\_data": {},
"expiration": 1739859548,
"captured": false,
"refunded": false,
"refunded\_amount": 0,
"receipt\_email": null,
"redirect\_url": null,
"complete\_payment\_url": "https://www.rapyd.net",
"error\_payment\_url": "https://support.rapyd.net/hc/en-us",
"receipt\_number": null,
"flow\_type": null,
"address": null,
"statement\_descriptor": null,
"transaction\_id": null,
"created\_at": 0,
"updated\_at": 0,
"metadata": null,
"failure\_code": null,
"failure\_message": null,
"paid": false,
"paid\_at": 0,
"dispute": null,
"refunds": null,
"order": null,
"outcome": null,
"visual\_codes": {},
"textual\_codes": {},
"instructions": {},
"ewallets": \[\
{\
"ewallet": "ewallet\_4a2ba015651f6f5e877536413a36dd07",\
"amount": 10,\
"percent": 100\
}\
\],
"payment\_method\_options": {
"3d\_required": true
},
"payment\_method\_type": null,
"payment\_method\_type\_category": null,
"fx\_rate": null,
"merchant\_requested\_currency": null,
"merchant\_requested\_amount": null,
"fixed\_side": null,
"payment\_fees": null,
"invoice": null,
"escrow": null,
"group\_payment": null,
"cancel\_reason": null,
"initiation\_type": null,
"mid": null,
"next\_action": "not\_applicable"
},
"payment\_method\_type": null,
"payment\_method\_type\_categories": null,
"payment\_method\_types\_include": null,
"payment\_method\_types\_exclude": null,
"account\_funding\_transaction": null,
"customer": null,
"custom\_elements": {
"hide\_save\_card": false,
"save\_card\_default": false,
"display\_description": false,
"payment\_fees\_display": true,
"merchant\_currency\_only": false,
"billing\_address\_collect": false,
"dynamic\_currency\_conversion": false
},
"timestamp": 1726388576,
"payment\_expiration": null,
"cart\_items": \[\],
"escrow": null,
"escrow\_release\_days": null,
"require\_card\_cvv": false
}
}
* Create Checkout Page - Recurring payments
* curl -X post
https://sandboxapi.rapyd.net/v1/checkout
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
-d '
{
"amount": 10,
"currency": "gbp",
"country": "gb",
"recurrence\_type":"recurring",
"customer":"cus\_24f508ed8d53904eac99f7d75be59ba7",
"complete\_payment\_url": "https://complete.rapyd.net",
"error\_payment\_url": "https://error.rapyd.net"
}
'
*
{
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "be816f7f-a2e8-4019-8a4a-bb0abed6db49"
},
"data": {
"id": "checkout\_64c3b49e326e1c23d57c81f35a25e532",
"status": "NEW",
"language": null,
"merchant\_color": "324cff",
"merchant\_logo": "https://sbiconslib.rapyd.net/merchant-logos/ohpc\_9251592457fc1d7c11a7d02882a6e085/Pikachu.jpg",
"merchant\_website": "https://www.rapyd.net",
"merchant\_customer\_support": {
"url": "https://www.rapyd.net",
"email": "john.doe@rapyd.net",
"phone\_number": "523-444444444"
},
"merchant\_alias": "AUTOMATION\_HCP",
"merchant\_terms": "https://www.terms123.com",
"merchant\_privacy\_policy": "https://www.privacy235.com",
"page\_expiration": 1724139311,
"redirect\_url": "https://sbcheckout.rapyd.net/?token=checkout\_64c3b49e326e1c23d57c81f35a25e532",
"merchant\_main\_button": "place\_your\_order",
"recurrence\_type": "recurring",
"cancel\_checkout\_url": "https://www.rapyd.net",
"complete\_checkout\_url": "https://www.rapyd.net",
"country": "GB",
"currency": "GBP",
"amount": 10,
"payment": {
"id": null,
"amount": 10,
"original\_amount": 0,
"is\_partial": false,
"currency\_code": "GBP",
"country\_code": "GB",
"status": null,
"description": "Payment via Checkout",
"merchant\_reference\_id": null,
"customer\_token": "cus\_24f508ed8d53904eac99f7d75be59ba7",
"payment\_method": null,
"payment\_method\_data": {},
"expiration": 0,
"captured": false,
"refunded": false,
"refunded\_amount": 0,
"receipt\_email": null,
"redirect\_url": null,
"complete\_payment\_url": "https://complete.rapyd.net",
"error\_payment\_url": "https://error.rapyd.net",
"receipt\_number": null,
"flow\_type": null,
"address": null,
"statement\_descriptor": null,
"transaction\_id": null,
"created\_at": 0,
"updated\_at": 0,
"metadata": null,
"failure\_code": null,
"failure\_message": null,
"paid": false,
"paid\_at": 0,
"dispute": null,
"refunds": null,
"order": null,
"outcome": null,
"visual\_codes": {},
"textual\_codes": {},
"instructions": {},
"ewallet\_id": null,
"ewallets": \[\],
"payment\_method\_options": {},
"payment\_method\_type": null,
"payment\_method\_type\_category": null,
"fx\_rate": null,
"merchant\_requested\_currency": null,
"merchant\_requested\_amount": null,
"fixed\_side": null,
"payment\_fees": null,
"invoice": null,
"escrow": null,
"group\_payment": null,
"cancel\_reason": null,
"initiation\_type": null,
"mid": null,
"next\_action": "not\_applicable"
},
"payment\_method\_type": null,
"payment\_method\_type\_categories": null,
"payment\_method\_types\_include": null,
"payment\_method\_types\_exclude": null,
"account\_funding\_transaction": null,
"customer": "cus\_24f508ed8d53904eac99f7d75be59ba7",
"custom\_elements": {
"hide\_save\_card": true,
"save\_card\_default": true,
"display\_description": false,
"payment\_fees\_display": true,
"merchant\_currency\_only": false,
"billing\_address\_collect": false,
"dynamic\_currency\_conversion": false
},
"timestamp": 1722929711,
"payment\_expiration": null,
"cart\_items": \[\],
"escrow": null,
"escrow\_release\_days": null
}
}
* Create Checkout Page - CVV of card required on subsequent payments
* curl -X post
https://sandboxapi.rapyd.net/v1/checkout
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
-d '
{
"country": "gb",
"currency": "gbp",
"amount": "10",
"customer": "cus\_b08b670dc7211c916ae1d67c51549483",
"require\_card\_cvv": true
}
'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "cb745c95-8798-4f88-8659-56273d5d7ad7"
},
"data": {
"id": "checkout\_13427f563a2dd69da06c6b503d137d49",
"status": "NEW",
"language": null,
"merchant\_color": "0c90e4",
"merchant\_logo": "https://sbiconslib.rapyd.net/merchant-logos/ohpc\_074fc5cbcbdf5e5b62889ba08db41784/Instagram post - 5 (2).jpg",
"merchant\_website": "https://www.example4567.com",
"merchant\_customer\_support": {
"url": "https://www.example4567.com/support",
"email": "example123456@rapyd.net",
"phone\_number": "442125551234"
},
"merchant\_alias": "12345678",
"merchant\_terms": "https://www.example4567.com/terms",
"merchant\_privacy\_policy": "https://www.example4567.com/policy",
"page\_expiration": 1724587506,
"redirect\_url": "https://sbcheckout.rapyd.net/?token=checkout\_13427f563a2dd69da06c6b503d137d49",
"merchant\_main\_button": "buy",
"recurrence\_type": null,
"cancel\_checkout\_url": "https://www.example4567.com/cancel",
"complete\_checkout\_url": "https://www.example4567.com/complete",
"country": "GB",
"currency": "GBP",
"amount": 10,
"payment": {
"id": null,
"amount": 10,
"original\_amount": 0,
"is\_partial": false,
"currency\_code": "GBP",
"country\_code": "GB",
"status": null,
"description": "Payment via Checkout",
"merchant\_reference\_id": null,
"customer\_token": "cus\_b08b670dc7211c916ae1d67c51549483",
"payment\_method": null,
"payment\_method\_data": {},
"expiration": 0,
"captured": false,
"refunded": false,
"refunded\_amount": 0,
"receipt\_email": null,
"redirect\_url": null,
"complete\_payment\_url": null,
"error\_payment\_url": null,
"receipt\_number": null,
"flow\_type": null,
"address": null,
"statement\_descriptor": null,
"transaction\_id": null,
"created\_at": 0,
"updated\_at": 0,
"metadata": null,
"failure\_code": null,
"failure\_message": null,
"paid": false,
"paid\_at": 0,
"dispute": null,
"refunds": null,
"order": null,
"outcome": null,
"visual\_codes": {},
"textual\_codes": {},
"instructions": {},
"ewallet\_id": null,
"ewallets": \[\],
"payment\_method\_options": {},
"payment\_method\_type": null,
"payment\_method\_type\_category": null,
"fx\_rate": null,
"merchant\_requested\_currency": null,
"merchant\_requested\_amount": null,
"fixed\_side": null,
"payment\_fees": null,
"invoice": null,
"escrow": null,
"group\_payment": null,
"cancel\_reason": null,
"initiation\_type": null,
"mid": null,
"next\_action": "not\_applicable"
},
"payment\_method\_type": null,
"payment\_method\_type\_categories": null,
"payment\_method\_types\_include": null,
"payment\_method\_types\_exclude": null,
"account\_funding\_transaction": null,
"customer": "cus\_b08b670dc7211c916ae1d67c51549483",
"custom\_elements": {
"hide\_save\_card": false,
"save\_card\_default": false,
"display\_description": false,
"payment\_fees\_display": true,
"merchant\_currency\_only": false,
"billing\_address\_collect": false,
"dynamic\_currency\_conversion": false
},
"timestamp": 1723377906,
"payment\_expiration": null,
"cart\_items": \[\],
"escrow": null,
"escrow\_release\_days": null,
"require\_card\_cvv": true
}
}
###### Related Information
* [Hosted Checkout Page Integration](hosted-checkout-page-integration.html "Hosted Checkout Page Integration")
In this section:
The number of seconds elapsed since the beginning of the Unix epoch, which was 00:00:00 GMT on January 1, 1970. 10-digit integer.
Search results
--------------
No results found
* [Prev](checkout-page.html)
* [Next](create-checkout-page.html#idp295515)
---
# Viewing Details of a Wallet
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Client Portal Guide](client-portal-guide.html)
* [Wallets](wallets.html)
* Viewing Details of a Wallet
* [Prev](previewing-wallet-details.html#idp259183)
* [Next](viewing-details-of-a-wallet.html#idp259226)
#### Viewing Details of a Wallet
You can view details of a specific wallet, including transactions and contacts.
To preview selected details of a wallet and its cards, see [Previewing Wallet Details](previewing-wallet-details.html "Previewing Wallet Details")
.
[##### How to View Wallet Details](#idp259226_body)
1. Sign in as described in [Accessing the Client Portal](accessing-the-client-portal.html "Accessing the Client Portal")
.
2. Do one of the following:
* Navigate to **Wallets** > **Wallets**, then click the **See more details** icon in the row of the wallet you want to view.
* Navigate to **Wallets** > **Transactions**, then click the **View wallet** icon in any transaction row of the wallet you want to view.
The **Wallet Details** page appears for the wallet you selected.

[##### Description of Fields](#idp259250_body)
The following table describes the fields of the **Wallet Details** page:
| Field | Description |
| --- | --- |
| ID | ID of the wallet. String starting with **ewallet\_**. |
| Status | Status of the wallet. |
| Wallet details | The details associated with the wallet. |
| Created At | The date and time that the wallet was created. |
| Type | The wallet type. One of the following:
* **client**
* **company**
* **personal** |
| Reference ID | Merchant-defined ID for the wallet. |
| Phone Number | The phone number of the primary wallet contact. |
| Verification Status | The identity verification status. |
| Email | The business email address of the primary wallet contact. |
| Balance | The current balance of each account in the wallet. Each currency account is listed separately. |
| Contacts | The contact associated with the wallet. |
| Full Name | The first and last name of the primary wallet contact. |
| Cards | The cards associated with the wallet. |
| Virtual Accounts | The virtual accounts associated with the wallet. |
| Contact Documents | The uploaded documents associated with a wallet contact. |
In this section:
Search results
--------------
No results found
* [Prev](previewing-wallet-details.html#idp259183)
* [Next](viewing-details-of-a-wallet.html#idp259226)
---
# Customizing Your Hosted Page
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Client Portal Guide](client-portal-guide.html)
* [Settings](settings.html)
* Customizing Your Hosted Page
* [Prev](activating-google-pay.html#idp251391)
* [Next](customizing-your-hosted-page.html#idp251420)
#### Customizing Your Hosted Page
Set the look and feel of your page to match your brand.
You can customize your hosted page, and set the look and feel that will apply to all applicable Rapyd platform Hosted pages.
[##### How to Customize Your Hosted Page](#idp251420_body)
1. Sign into Client Portal and navigate to **Settings** > **Branding**.

### Select Your Hosted Page to View
The Preview bar, located above the preview window, will display a preview of your Hosted Checkout page branding. You can toggle between the Hosted Checkout Page, Hosted Subscription Checkout Page, Save Card Details Page, and Beneficiary Account Details Page. Branding settings affect all Hosted pages including Rapyd Collect, Disburse, and Issuing.
2. On the **Brand elements** pane on the left side of the page, tap the **Upload logo** icon and upload an image file (png, jpg, jpeg, gif) containing your company logo.
3. Tap the **Brand color** field to select the color of the buttons on the display.

4. In the **Fallback URL** field, enter the URL of the page that appears when the process is completed or canceled when `complete_checkout_url` or `cancel_checkout_url` is not specified.

### Complete and Cancel URLs
Other Hosted pages may have different fields such as `complete_url` and `cancel_url`
* Beneficiary Tokenization Page
* Rapyd Verify Hosted Page
* Hosted IDV Page
* Hosted Page Card Token Object
5. Remove any Payment Methods you will not accept (Hosted Checkout only).
* Bank - Includes Bank Redirect and Bank Transfer
* Card
* Cash
* eWallet

6. Choose your button text from the drop down (Hosted Checkout only).

7. **(Optional) Customer Support Details** - You can add your customer support contact information to be displayed on your hosted pages.

8. Tap the **Save changes** button at the upper right corner of the screen.

[##### Preview Your Hosted Page](#idp251496_body)
1. On the Branding page, switch between the mobile icon or desktop icon to view the preview of your hosted page.

In this section:
Search results
--------------
No results found
* [Prev](activating-google-pay.html#idp251391)
* [Next](customizing-your-hosted-page.html#idp251420)
---
# Plugins
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* Plugins
* [Prev](api-changelog.html#UUID-18713759-0ea3-e6d7-3f9b-968741c0ec0a_section-idm457950036567203395409843031)
* [Next](plugins.html#idp420324)
Plugins
-------
Instantly connect hundreds of local payment methods to your shopping cart. Accept local payments on the world’s leading ecommerce platforms.
Rapyd Payments Plugins
en/rapyd-payments-app-for-woocommerce.html
WooCommerce
Learn how to accept customer-preferred payment methods like eWallets, cash, and bank transfers in over 50 countries, enhancing conversion rates and customer loyalty.
en/rapyd-payments-plugin-for-wix.html
Wix
Rapyd's Wix plugin enhances global transactions, providing diverse payment methods and enabling increased customer conversions through a user-friendly setup in the Rapyd Client Portal.
en/rapyd-payments-plugin-for-shopify.html
Shopify
The Rapyd plugin for Shopify allows online stores to accept a variety of payment methods, including eWallets, cash, and bank transfers, thereby increasing conversions and customer loyalty.
Additional Plugins
| | |
| --- | --- |
| [Magento](rapyd-payments-plugin-for-magento.html "Rapyd Payments Plugin for Magento") | Connect your Magento ecommerce site to card acceptance and hundreds of local payment methods across the globe. |
| [Ecwid](rapyd-payments-app-for-ecwid.html "Rapyd Payments App for Ecwid") | Start accepting payments from your Ecwid store. |
| [OpenCart](rapyd-payments-plugin-for-opencart.html "Rapyd Payments Plugin for OpenCart") | Accept cross-border payments from your OpenCart store. Download it now from the [OpenCart Extensions Marketplace](https://www.opencart.com/index.php?route=marketplace/extension&filter_search=rapyd)
or your OpenCart control panel. |
| [PrestaShop](rapyd-payments-plugin-for-prestashop.html "Rapyd Payments Plugin for PrestaShop") | Accept cross-border payments from your PrestaShop store. |
In this section:
Search results
--------------
No results found
* [Prev](api-changelog.html#UUID-18713759-0ea3-e6d7-3f9b-968741c0ec0a_section-idm457950036567203395409843031)
* [Next](plugins.html#idp420324)
---
# Previewing Wallet Details
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Client Portal Guide](client-portal-guide.html)
* [Wallets](wallets.html)
* Previewing Wallet Details
* [Prev](listing-wallets.html#idp259022)
* [Next](previewing-wallet-details.html#idp259060)
#### Previewing Wallet Details
You can preview selected details of a specific wallet and its cards.
To view details of a wallet, including transactions and contacts, see [Viewing Details of a Wallet](viewing-details-of-a-wallet.html "Viewing Details of a Wallet")
.
[##### How to Preview Wallet Details](#idp259060_body)
1. Sign in as described in [Accessing the Client Portal](accessing-the-client-portal.html "Accessing the Client Portal")
and click **Wallets** > **Wallets**.
The **Wallets** page appears.

2. Tap the row of the **Wallet ID** for the wallet you want.

The **Wallet** tab of the **Wallet details** panel appears.

[##### Wallet Tab](#idp259085_body)
The following table describes the fields of the **Wallet** tab:
| Field | Description |
| --- | --- |
| Wallet Name | The name of the wallet. |
| Wallet ID | The ID for the wallet starting with **ewallet\_**. |
| Wallet Status | The status of the wallet: **active** or **disabled**. |
| Created At | The date and time the wallet was created. |
| Wallet Balances | The balances for the wallet, listed by currency. |
| Wallet Type | The wallet type: **personal** or **company**. |
| Verification Status | The status of wallet verification: **new**, **submitted**, **pending review**, **verified**, or **declined**. |
| Reference ID | The merchant-defined reference ID of the wallet. |
| Contact Name | Name of the wallet contact. |
| Email | The email of the wallet contact. |
| Phone Number | The phone number of the wallet contact. |
Tap on the **View wallet** link to view all the wallet details. See also [Viewing Details of a Wallet](viewing-details-of-a-wallet.html "Viewing Details of a Wallet")
.

The Wallet details panel displays:
* Tap the **Transfer Funds** button to transfer funds to another wallet.
* Tap the **Deactivate** button to deactivate the wallet. See also [Deactivating a Wallet](deactivating-a-wallet.html "Deactivating a Wallet")
.
* Tap the **Add Contact** button to add a contact to a wallet.
* Tap the **Create payment link** button to create a payment link.
[##### Issuing Tab](#idp259183_body)
1. Tap **Issuing** to view the cards and virtual accounts associated with your wallet.
2. In the **Physical cards** section, you can view: the cardholder name, card status, last 4 digits, and the expiration date.
3. You can activate or block the card by clicking on the **Active** toggle.
4. Click the three dots in the right side of the **Physical cards** section to reset the card PIN or view the card program.

5. Click the drop-down to view additional details about a virtual account.

6. Use the search bar to search for a virtual account using the following fields:
* Account Name
* IBAN
* Account Number
7. Click **Edit requested currency** to update the currency. Click the three dots next to the button to view the transactions for the virtual account, or copy the account information.
8. Click the **Create virtual account** button at the bottom of the panel to create a virtual account for the wallet.
In this section:
Search results
--------------
No results found
* [Prev](listing-wallets.html#idp259022)
* [Next](previewing-wallet-details.html#idp259060)
---
# List Subscriptions
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [API Reference](api-reference.html)
* [Rapyd Collect](rapyd-collect-363484.html)
* [Subscription](subscription.html)
* [Subscription](subscription-364807.html)
* List Subscriptions
* [Prev](update-subscription.html)
* [Next](retrieve-subscription.html)
###### List Subscriptions
Retrieve a list of subscriptions.
You can filter the list with query parameters.
[###### Parameters](#idp303745_body)
[###### Request Query Parameters](#idp303747_body)
* * billing
* Method of billing. One of the following:
* **pay\_automatically**
* **send\_invoice**
* * customer
* ID of the customer. String starting with **cus\_**.
* * ending\_before
* The ID of a record in the list. The list ends with the last record that was created before the record with this ID. Use this filter to get the previous page of results.
* * limit
* The maximum number of subscriptions to return. Range: 1-100.
10
* * product
* ID of a `product` object. The product must have `type` set to **service**. String starting with **product\_**. Filter for one product at a time.
* * starting\_after
* The ID of a record in the list. The list begins with the record that was created next after the record with this ID. Use this filter to get the next page of results. Relevant when `ending_before` is not used.
* * status
* Status of the subscription. One of the following:
* **active**
* **canceled**
* **trialing**
[###### Request Header Parameters](#idp303816_body)
[###### Response Parameters](#idp303866_body)
###### Code Samples
* * .NET
* using System;
using System.Text.Json;
namespace RapydApiRequestSample
{
class Program
{
static void Main(string\[\] args)
{
try
{
string customer = "cus\_494eae8b99f697107d7384c2c6862166";
int limit = 1;
string result = RapydApiRequestSample.Utilities.MakeRequest("GET", $"/v1/payments/subscriptions?customer={customer}&limit={limit}");
Console.WriteLine(result);
}
catch (Exception e)
{
Console.WriteLine("Error completing request: " + e.Message);
}
}
}
}
* * JavaScript
* const makeRequest = require('/utilities').makeRequest;
async function main() {
try {
const result = await makeRequest(
'GET',
'/v1/payments/subscriptions?customer=cus\_f3923ec56a56578b6a18df24d4f32d54&limit=1'
);
console.log(result);
} catch (error) {
console.error('Error completing request', error);
}
}
* * PHP
* /utilities.php";
include($path);
try {
$object = make\_request('get', '/v1/payments/subscriptions?customer=cus\_494eae8b99f697107d7384c2c6862166&limit=1');
var\_dump($object);
} catch(Exception $e) {
echo "Error: $e";
}
?>
* * Python
* from pprint import pprint
from utilities import make\_request
result = make\_request(method='get', path='/v1/payments/subscriptions?customer=cus\_494eae8b99f697107d7384c2c6862166&limit=1')
pprint(result)
* /v1/payments/subscriptions
* List Subscriptions by Customer
* curl -X get
https://sandboxapi.rapyd.net/v1/payments/subscriptions?customer=cus\_494eae8b99f697107d7384c2c6862166&limit=1
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "c03a32f6-5023-4577-b2b3-4442df616d4a"
},
"data": \[\
{\
"id": "sub\_db73da2fc2a7a3b8451fed8afdbaf46c",\
"billing": "pay\_automatically",\
"billing\_cycle\_anchor": 1700140716,\
"created\_at": 1700140716,\
"customer\_token": "cus\_b306773fc73d23e5a9b4347984606cf7",\
"days\_until\_due": 30,\
"metadata": {},\
"tax\_percent": 0,\
"cancel\_at\_period\_end": false,\
"canceled\_at": null,\
"current\_period\_end": 1702732716,\
"current\_period\_start": 1700140716,\
"discount": null,\
"ended\_at": null,\
"subscription\_items": {\
"data": \[\
{\
"id": "subi\_e3cec118feec75e0f270d888a053a410",\
"created": 1700140716,\
"metadata": null,\
"quantity": 5,\
"plan": {\
"id": "plan\_4feb4cf48e807cd142d7759a58a55d2f",\
"aggregate\_usage": "sum",\
"amount": 9.99,\
"billing\_scheme": "per\_unit",\
"created\_at": 1700140529,\
"currency": "USD",\
"interval": "month",\
"interval\_count": 1,\
"metadata": {},\
"product": {\
"id": "product\_4ba001c7655c4a0ee4f471dbaccaa305",\
"active": true,\
"attributes": \[\
"location",\
"size"\
\],\
"created\_at": 1673932995,\
"description": "Unlimited music streaming",\
"images": \[\
"64bit-encoded-image-1",\
"64bit-encoded-image-2"\
\],\
"metadata": {},\
"name": "Unlimited Music",\
"package\_dimensions": {\
"height": 0,\
"length": 0,\
"weight": 0,\
"width": 0\
},\
"shippable": false,\
"skus": \[\],\
"statement\_descriptor": "Music streaming",\
"type": "services",\
"unit\_label": "month",\
"updated\_at": 1673932995\
},\
"nickname": "Unlimited Plan",\
"tiers": \[\],\
"tiers\_mode": "",\
"transform\_usage": {\
"divide\_by": 1,\
"round": "up"\
},\
"trial\_period\_days": 7,\
"usage\_type": "licensed",\
"active": true\
}\
},\
{\
"id": "subi\_f0d375617a093d30307adec9ea246b44",\
"created": 1700140716,\
"metadata": null,\
"quantity": 3,\
"plan": {\
"id": "plan\_26aabd1d48bcfec1ff05dc2bed772aa3",\
"aggregate\_usage": "sum",\
"amount": 10.99,\
"billing\_scheme": "per\_unit",\
"created\_at": 1700140584,\
"currency": "USD",\
"interval": "month",\
"interval\_count": 1,\
"metadata": {},\
"product": {\
"id": "product\_4ba001c7655c4a0ee4f471dbaccaa305",\
"active": true,\
"attributes": \[\
"location",\
"size"\
\],\
"created\_at": 1673932995,\
"description": "Unlimited music streaming",\
"images": \[\
"64bit-encoded-image-1",\
"64bit-encoded-image-2"\
\],\
"metadata": {},\
"name": "Unlimited Music",\
"package\_dimensions": {\
"height": 0,\
"length": 0,\
"weight": 0,\
"width": 0\
},\
"shippable": false,\
"skus": \[\],\
"statement\_descriptor": "Music streaming",\
"type": "services",\
"unit\_label": "month",\
"updated\_at": 1673932995\
},\
"nickname": "Unlimited Plan plus",\
"tiers": \[\],\
"tiers\_mode": "",\
"transform\_usage": {\
"divide\_by": 1,\
"round": "up"\
},\
"trial\_period\_days": 7,\
"usage\_type": "licensed",\
"active": true\
}\
}\
\],\
"has\_more": false,\
"total\_count": 2,\
"url": "/v1/subscription\_items?subscription=sub\_db73da2fc2a7a3b8451fed8afdbaf46c"\
},\
"status": "unpaid",\
"trial\_end": null,\
"trial\_start": null,\
"payment\_method": "card\_3c000ae5db06762a2c8a00ca514fa336",\
"payment\_fields": null,\
"payout\_fields": null,\
"type": "payment",\
"simultaneous\_invoice": false\
}\
\]
}
* List Subscriptions by Product
* curl -X get
https://sandboxapi.rapyd.net/v1/payments/subscriptions?product=product\_4ba001c7655c4a0ee4f471dbaccaa305&limit=1
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "90944be7-447f-4875-ac63-f1a9f970b613"
},
"data": \[\
{\
"id": "sub\_db73da2fc2a7a3b8451fed8afdbaf46c",\
"billing": "pay\_automatically",\
"billing\_cycle\_anchor": 1700140716,\
"created\_at": 1700140716,\
"customer\_token": "cus\_b306773fc73d23e5a9b4347984606cf7",\
"days\_until\_due": 30,\
"metadata": {},\
"tax\_percent": 0,\
"cancel\_at\_period\_end": false,\
"canceled\_at": null,\
"current\_period\_end": 1702732716,\
"current\_period\_start": 1700140716,\
"discount": null,\
"ended\_at": null,\
"subscription\_items": {\
"data": \[\
{\
"id": "subi\_e3cec118feec75e0f270d888a053a410",\
"created": 1700140716,\
"metadata": null,\
"quantity": 5,\
"plan": {\
"id": "plan\_4feb4cf48e807cd142d7759a58a55d2f",\
"aggregate\_usage": "sum",\
"amount": 9.99,\
"billing\_scheme": "per\_unit",\
"created\_at": 1700140529,\
"currency": "USD",\
"interval": "month",\
"interval\_count": 1,\
"metadata": {},\
"product": {\
"id": "product\_4ba001c7655c4a0ee4f471dbaccaa305",\
"active": true,\
"attributes": \[\
"location",\
"size"\
\],\
"created\_at": 1673932995,\
"description": "Unlimited music streaming",\
"images": \[\
"64bit-encoded-image-1",\
"64bit-encoded-image-2"\
\],\
"metadata": {},\
"name": "Unlimited Music",\
"package\_dimensions": {\
"height": 0,\
"length": 0,\
"weight": 0,\
"width": 0\
},\
"shippable": false,\
"skus": \[\],\
"statement\_descriptor": "Music streaming",\
"type": "services",\
"unit\_label": "month",\
"updated\_at": 1673932995\
},\
"nickname": "Unlimited Plan",\
"tiers": \[\],\
"tiers\_mode": "",\
"transform\_usage": {\
"divide\_by": 1,\
"round": "up"\
},\
"trial\_period\_days": 7,\
"usage\_type": "licensed",\
"active": true\
}\
},\
{\
"id": "subi\_f0d375617a093d30307adec9ea246b44",\
"created": 1700140716,\
"metadata": null,\
"quantity": 3,\
"plan": {\
"id": "plan\_26aabd1d48bcfec1ff05dc2bed772aa3",\
"aggregate\_usage": "sum",\
"amount": 10.99,\
"billing\_scheme": "per\_unit",\
"created\_at": 1700140584,\
"currency": "USD",\
"interval": "month",\
"interval\_count": 1,\
"metadata": {},\
"product": {\
"id": "product\_4ba001c7655c4a0ee4f471dbaccaa305",\
"active": true,\
"attributes": \[\
"location",\
"size"\
\],\
"created\_at": 1673932995,\
"description": "Unlimited music streaming",\
"images": \[\
"64bit-encoded-image-1",\
"64bit-encoded-image-2"\
\],\
"metadata": {},\
"name": "Unlimited Music",\
"package\_dimensions": {\
"height": 0,\
"length": 0,\
"weight": 0,\
"width": 0\
},\
"shippable": false,\
"skus": \[\],\
"statement\_descriptor": "Music streaming",\
"type": "services",\
"unit\_label": "month",\
"updated\_at": 1673932995\
},\
"nickname": "Unlimited Plan plus",\
"tiers": \[\],\
"tiers\_mode": "",\
"transform\_usage": {\
"divide\_by": 1,\
"round": "up"\
},\
"trial\_period\_days": 7,\
"usage\_type": "licensed",\
"active": true\
}\
}\
\],\
"has\_more": false,\
"total\_count": 2,\
"url": "/v1/subscription\_items?subscription=sub\_db73da2fc2a7a3b8451fed8afdbaf46c"\
},\
"status": "unpaid",\
"trial\_end": null,\
"trial\_start": null,\
"payment\_method": "card\_3c000ae5db06762a2c8a00ca514fa336",\
"payment\_fields": null,\
"payout\_fields": null,\
"type": "payment",\
"simultaneous\_invoice": false\
}\
\]
}
In this section:
The number of seconds elapsed since the beginning of the Unix epoch, which was 00:00:00 GMT on January 1, 1970. 10-digit integer.
Search results
--------------
No results found
* [Prev](update-subscription.html)
* [Next](retrieve-subscription.html)
---
# Rapyd Payments App for WooCommerce
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Plugins](plugins.html)
* [Plugins and Add-Ons](plugins-and-add-ons.html)
* Rapyd Payments App for WooCommerce
* [Prev](plugins-and-add-ons.html#idp420460)
* [Next](rapyd-payments-app-for-woocommerce.html#idp420497)
#### Rapyd Payments App for WooCommerce
Convert more customers by accepting their preferred payment methods like ewallets, cash, and bank transfers.
Offering more payment methods drives increased conversions and customer loyalty. Rapyd offers this plugin for over 50 countries.
Download it now at **WordPress.org** or via the **Add New** option under **Plugins** on your WordPress control panel. For detailed information, read the full instructions on this page.
### Rapyd Account Connection Limit
You can only connect one store per Rapyd Account.
You must be domiciled in one of the following countries in order to accept payments.
[##### Supported Countries](#idp420497_body)
Andorra, Armenia, Austria, Australia, Belgium, Bosnia and Herzegovina, Brazil, Bulgaria, Canada, Chile, Colombia, Croatia, Cyprus, Czech Republic, Denmark, Dominican Republic, El Salvador, Estonia, Finland, France, Georgia, Germany, Gibraltar, Greece, Greenland, Hong Kong, Hungary, Iceland, India, Indonesia, Ireland, Israel, Italy, Japan, Latvia, Liechtenstein, Lithuania, Luxembourg, Macedonia, Malaysia, Malta, Mexico, Moldova, Monaco, Montenegro, Netherlands, New Zealand, Norway, Peru, Philippines, Poland, Portugal, Romania, San Marino, Singapore, Slovakia, Slovenia, South Africa, South Korea, Spain, Sweden, Switzerland, Taiwan, Thailand, Turkey, UK, Vatican, Vietnam
##### How to Activate WooCommerce
[###### Step 1: Get Started with Rapyd Payments](#idp420502_body)
[Sign up](https://support.rapyd.net)
With a Rapyd Client Portal Account, you can:
* Activate and set up your plugin.
* Access sandbox mode and test payments.
* View supported payment methods.
* View payment reports.
* Invite team members.
* Complete KYB steps to fully activate your account.
### WooCommerce Subscriptions Extension
To enable recurring payments, refer to in the [WooCommerce Subscriptions Store Manage Guide](https://woocommerce.com/document/subscriptions/store-manager-guide/)
.
[###### Step 2: Activate Your WooCommerce Plugin in Rapyd Client Portal](#idp420524_body)
1. Sign in to Client Portal and navigate to **Plugins**.

2. In the **WooCommerce** window, click the **Active** toggle button.

[###### Step 3: Plugin Installation on WooCommerce](#idp420540_body)
1. Sign in to your WordPress site and navigate to **Tools > Plugins**.
2. Select **Plugins > Add New** from the main menu.
3. In the **Search Plugins** textbox enter **Rapyd Payments Plugin**. The **Rapyd Payments Plugin for WooCommerce** appears.
4. Click **Install Now**. The Installing plugin page appears.
5. Click **Activate Plugin**. The **Plugins** **Rapyd Payments for WooCommerce**

[###### Step 4: Rapyd Payments Plugin Configuration](#idp420565_body)
From the WooCommerce Settings you can begin to manage specific payment methods and countries as well manage your Secret Keys for testing and production. To manage payment methods
1. Select **WooCommerce > Settings** from the menu.

2. Click the **Payments** tab.

The **Payment methods** page appears. All Rapyd payment methods are automatically enabled.

3. Click the **Manage** button of any **Rapyd payments** method.

The **Settings** page appears.

4. In the **Rapyd plugin settings** section, enter your Rapyd **Secret Key** and **Access Key** for the sandbox environment, then select the **Enable test mode** checkbox. See also [Plugins and Add-Ons](plugins-and-add-ons.html "Plugins and Add-Ons")
.

5. Click **Save Changes**.
[###### Step 5: Testing the Rapyd Payments Plugin for WooCommerce](#idp420611_body)
### Sandbox Testing
The Rapyd Client Portal must be in sandbox mode during the testing phase.
**How to Test a Payment**
1. Go to your WooCommerce test site and add an item to the cart.
2. Add the customer details and then move to the payment screen. Select a payment method that is provided by Rapyd and click **Place Order**.

A checkout page for completing the payment appears.

After you have finished testing the plugin, you can switch to production mode.
### Listing Payments in Client Portal
In circumstances where the paid amount is less than the original amount, use the Client Portal to verify the actual amount that was paid, and not the store's admin portal.
[###### Step 6: Configuring WooCommerce Plugin for Production](#idp420635_body)
Once you’ve completed testing you need to set Plugin for Production Mode.
### Account Activation
To fully activate your account for production mode you’ll need to complete the KYB form for compliance review in the Rapyd Client Portal.
**How to Configure Your Plugin**
1. Access the Rapyd Client Portal and set the Client Portal to production mode.
2. On your WooCommerce site, go to the **Settings** page of any Rapyd Payment.
3. Enter your Rapyd **Secret Key** and **Access Key** for the production environment. Note that these keys are different from the sandbox keys. See also [Plugins and Add-Ons](plugins-and-add-ons.html "Plugins and Add-Ons")
.

4. Clear the **Enable test mode** checkbox.
5. Click **Save Changes**.
[###### Step 7: Set Up a Landing Page URL](#idp420663_body)
After the checkout process completes, the customer can be forwarded to a landing page. This may be the main URL of the ecommerce site or any other landing page that you may want to define. To set the landing page URL:
1. Sign in to the Client Portal and navigate to **Settings > Branding**.

2. Click on the link icon and enter the URL of the landing page in the **Fallback URL** field.

3. Click **Save**.
In this section:
Search results
--------------
No results found
* [Prev](plugins-and-add-ons.html#idp420460)
* [Next](rapyd-payments-app-for-woocommerce.html#idp420497)
---
# Retrieve Subscription
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [API Reference](api-reference.html)
* [Rapyd Collect](rapyd-collect-363484.html)
* [Subscription](subscription.html)
* [Subscription](subscription-364807.html)
* Retrieve Subscription
* [Prev](list-subscriptions.html)
* [Next](cancel-subscription.html)
###### Retrieve Subscription
Retrieve the details of a subscription.
[###### Parameters](#idp304358_body)
[###### Request Path Parameters](#idp304360_body)
* * subscription
* ID of the subscription. String starting with **sub\_**.
[###### Request Header Parameters](#idp304370_body)
[###### Response Parameters](#idp304420_body)
###### Code Samples
* * .NET
* using System;
using System.Text.Json;
namespace RapydApiRequestSample
{
class Program
{
static void Main(string\[\] args)
{
try
{
string subscription = "sub\_b3cbb7eba3e4d67e9bf016dd78267b56";
string result = RapydApiRequestSample.Utilities.MakeRequest("GET", $"/v1/payments/subscriptions/{subscription}");
Console.WriteLine(result);
}
catch (Exception e)
{
Console.WriteLine("Error completing request: " + e.Message);
}
}
}
}
* * JavaScript
* const makeRequest = require('/utilities').makeRequest;
async function main() {
try {
const result = await makeRequest(
'GET',
'/v1/payments/subscriptions/sub\_b3cbb7eba3e4d67e9bf016dd78267b56'
);
console.log(result);
} catch (error) {
console.error('Error completing request', error);
}
}
* * PHP
* /utilities.php";
include($path);
try {
$object = make\_request('get', '/v1/payments/subscriptions/sub\_b3cbb7eba3e4d67e9bf016dd78267b56');
var\_dump($object);
} catch(Exception $e) {
echo "Error: $e";
}
?>
* * Python
* from pprint import pprint
from utilities import make\_request
result = make\_request(method='get', path='/v1/payments/subscriptions/sub\_b3cbb7eba3e4d67e9bf016dd78267b56')
pprint(result)
* /v1/payments/subscriptions/:subscription
* Retrieve Subscription
* curl -X get
https://sandboxapi.rapyd.net/v1/payments/subscriptions/sub\_db73da2fc2a7a3b8451fed8afdbaf46c
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "0d22931f-c478-4a5b-b564-939afcf10723"
},
"data": {
"id": "sub\_db73da2fc2a7a3b8451fed8afdbaf46c",
"billing": "pay\_automatically",
"billing\_cycle\_anchor": 1700140716,
"created\_at": 1700140716,
"customer\_token": "cus\_b306773fc73d23e5a9b4347984606cf7",
"days\_until\_due": 30,
"metadata": {},
"tax\_percent": 0,
"cancel\_at\_period\_end": false,
"canceled\_at": null,
"current\_period\_end": 1702732716,
"current\_period\_start": 1700140716,
"discount": null,
"ended\_at": null,
"subscription\_items": {
"data": \[\
{\
"id": "subi\_e3cec118feec75e0f270d888a053a410",\
"created": 1700140716,\
"metadata": null,\
"quantity": 5,\
"plan": {\
"id": "plan\_4feb4cf48e807cd142d7759a58a55d2f",\
"aggregate\_usage": "sum",\
"amount": 9.99,\
"billing\_scheme": "per\_unit",\
"created\_at": 1700140529,\
"currency": "USD",\
"interval": "month",\
"interval\_count": 1,\
"metadata": {},\
"product": {\
"id": "product\_4ba001c7655c4a0ee4f471dbaccaa305",\
"active": true,\
"attributes": \[\
"location",\
"size"\
\],\
"created\_at": 1673932995,\
"description": "Unlimited music streaming",\
"images": \[\
"64bit-encoded-image-1",\
"64bit-encoded-image-2"\
\],\
"metadata": {},\
"name": "Unlimited Music",\
"package\_dimensions": {\
"height": 0,\
"length": 0,\
"weight": 0,\
"width": 0\
},\
"shippable": false,\
"skus": \[\],\
"statement\_descriptor": "Music streaming",\
"type": "services",\
"unit\_label": "month",\
"updated\_at": 1673932995\
},\
"nickname": "Unlimited Plan",\
"tiers": \[\],\
"tiers\_mode": "",\
"transform\_usage": {\
"divide\_by": 1,\
"round": "up"\
},\
"trial\_period\_days": 7,\
"usage\_type": "licensed",\
"active": true\
}\
},\
{\
"id": "subi\_f0d375617a093d30307adec9ea246b44",\
"created": 1700140716,\
"metadata": null,\
"quantity": 3,\
"plan": {\
"id": "plan\_26aabd1d48bcfec1ff05dc2bed772aa3",\
"aggregate\_usage": "sum",\
"amount": 10.99,\
"billing\_scheme": "per\_unit",\
"created\_at": 1700140584,\
"currency": "USD",\
"interval": "month",\
"interval\_count": 1,\
"metadata": {},\
"product": {\
"id": "product\_4ba001c7655c4a0ee4f471dbaccaa305",\
"active": true,\
"attributes": \[\
"location",\
"size"\
\],\
"created\_at": 1673932995,\
"description": "Unlimited music streaming",\
"images": \[\
"64bit-encoded-image-1",\
"64bit-encoded-image-2"\
\],\
"metadata": {},\
"name": "Unlimited Music",\
"package\_dimensions": {\
"height": 0,\
"length": 0,\
"weight": 0,\
"width": 0\
},\
"shippable": false,\
"skus": \[\],\
"statement\_descriptor": "Music streaming",\
"type": "services",\
"unit\_label": "month",\
"updated\_at": 1673932995\
},\
"nickname": "Unlimited Plan plus",\
"tiers": \[\],\
"tiers\_mode": "",\
"transform\_usage": {\
"divide\_by": 1,\
"round": "up"\
},\
"trial\_period\_days": 7,\
"usage\_type": "licensed",\
"active": true\
}\
}\
\],
"has\_more": false,
"total\_count": 2,
"url": "/v1/subscription\_items?subscription=sub\_db73da2fc2a7a3b8451fed8afdbaf46c"
},
"status": "unpaid",
"trial\_end": null,
"trial\_start": null,
"payment\_method": "card\_3c000ae5db06762a2c8a00ca514fa336",
"payment\_fields": null,
"payout\_fields": null,
"type": "payment",
"simultaneous\_invoice": false
}
}
In this section:
The number of seconds elapsed since the beginning of the Unix epoch, which was 00:00:00 GMT on January 1, 1970. 10-digit integer.
Search results
--------------
No results found
* [Prev](list-subscriptions.html)
* [Next](cancel-subscription.html)
---
# Merchant Settlement Report
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Client Portal Guide](client-portal-guide.html)
* [Reports](reports-367106.html)
* Merchant Settlement Report
* [Prev](merchant-reconciliation-report.html#idp265919)
* [Next](merchant-settlement-report.html#idp265940)
#### Merchant Settlement Report
The **Merchant Settlement Report** summarizes all settlements performed to the merchant during the period for which the report applies to. The report is generated only when settlement events occur.
There are a few different types of Settlement reports:
* Merchant Settlement Report - Summarizes all settlements performed to the merchant during the period for which the report applies to. The report is generated only when settlement events occur.
* Merchant Settlement Report Beta - The same report as Merchant Settlement Report, but temporarily released when new fields are released (beta) before they are merged into the main Merchant Settlement Report.
* Merchant Monthly Settlement Report - Monthly overview of the Merchant Settlement Report as described.
You can download the **Merchant Settlement Report**. See [Downloading a Financial Report](downloading-a-financial-report.html "Downloading a Financial Report")
.
The report is provided in the form of a CSV file. To read it, open it in a spreadsheet.
[##### File Version](#idp265940_body)
The current file format version is _1.4_
[##### Reporting Frequency](#idp265944_body)
Depending on the merchant activity, the report is generated on a daily basis at 2:00 AM GMT.
[##### File Structure](#idp265947_body)
###### Header Format
Line 1 of the CSV file contains the following information:
### Timestamps Format
All timestamps should be in UTC.
| Field | Value |
| --- | --- |
| Report Title | Rapyd Merchant Settlement Report |
| Version | Report version number |
| Merchant | Alias of the merchant |
| From | the string "From" |
| Start date | Period start date |
| To | the string "To" |
| End date | Period end date |
###### Data Format
* **Headers** - Described in the following table.
* **Collections** - Transactions created by [Create Payment](create-payment.html "Create Payment")
or [Create Refund](create-refund.html "Create Refund")
. If the merchant has two or more accounts for collections, each account appears on a separate line.
* **Disbursements** - Transactions created by [Create Payout](create-payout.html "Create Payout")
.
### Transaction Settlement Timeframe
Transactions closed within a day (UTC time) will be considered for settlement starting that day (i.e. the system's cutoff time is 12:00 AM UTC).
| Field | Value |
| --- | --- |
| Account ID | Alias of the merchant's account on the Rapyd platform. |
| Account Number | The account number of the bank account to which the settlement was remitted to. |
| Bank | The name of the merchant's bank where the settlement is managed. Relevant to collections. |
| Wallet ID | * **Collections** - The wallet where the funds are collected to and settled from.
* **Disbursements** - The wallet where the fees are collected from. Relevant when fees are collected from a wallet and not invoiced. |
| Type | Type of transaction. One of the following:
* **Collection** - Payments and refunds.
* **Disbursement** - Payouts. |
| Settlement Date | The date the settlement was processed and remitted by Rapyd. Format: **YYYY-MM-DD** |
| Original Settlement Date | The date the funds are designated to be settled according to the settlement cycle. |
| Settlement Currency | The currency of the transactions, as settled with the merchant. Three-letter ISO 4217 code. Relevant to collections. |
| Reserve Amount in Settlement Currency | The total reserve amount denominated in the settlement currency. |
| Reserve Currency | The currency of the reserve funds. |
| Reserve Amount in Reserve Currency | The total reserve amount denominated in the reserve currency. |
| Settlement Amount | The amount settled with the merchant for transactions that settled on the settlement date. |
| Settlement ID | The identifier of the settlement generated by Rapyd. |
| Settlement Reference ID | The identifier of the settlement completed by Rapyd on the settlement configuration. |
| Settlement Wallet Account Currency | * **Collections** - The currency of the funds collected.
* **Disbursements** - The currency of the funds received by the beneficiary.
Three-letter ISO 4217 code. |
| Settlement Amount in Wallet Account Currency | The client wallet currency equivalent of the amount settled with the merchant. |
| Prev Negative Settlement | The total amount that the merchant owes to Rapyd from previous days. Relevant when there is a past negative remittance. |
| Static Reference ID | The identifier generated from the settlement configuration. |
| Initiator | Indicates whether the settlement is requested by Rapyd or the client. The settlement is requested by the client for **settlement on demand** transactions.
Possible values:
* Rapyd
* Client |
| Client Reference | The Settlement Reference ID for **settlement on demand** transactions. Other possible values: **null**. |
| Wallet Address | The wallet address value as entered by the merchant. |
##### Sample Report
**Merchant Settlement Report**
Merchant Settlement Report,v1.4,Awesome Merchant LTD,From,2024/04/29,To,2024/04/30,,,,,,,,,,,,,
Account ID,Account Number,Bank,Wallet ID,Type,Settlement Date,Settlement Currency,Settlement Amount,Settlement Wallet Account Currency,Settlement Amount in Wallet Account Currency,Prev Negative Settlement,Settlement Reference ID,Static Reference Id,Reserve Currency,Reserve Amount in Reserve Currency,Reserve Amount in Settlement Currency,Initiator,Client Reference,Settlement ID,Original Settlement Date
Awesome Merchant LTD,123456789,Bank of America,ewallet\_fdfg321dfg54dfg321dfg3215dfg321df,Collections,2024-04-30,USD,62005.645,USD,62005.645,,ds321fds5sdf,,USD,"4,758.96","4,758.96",Rapyd,,SDFG5DFG321DFG6548UKJ3K321HJM3,2024-04-22
Awesome Merchant LTD,123456790,Bank of America,ewallet\_fdfg321dfg54dfg321dfg3215dfg321df,Collections,2024-04-30,USD,61972.025,USD,61972.025,,dfg321df3dfg1,,USD,"4,757.66","4,757.66",Rapyd,,DFHF856GHJ231DF32GFH8YUJ321G3FGH1,2024-04-22
Awesome Merchant LTD,123456791,Bank of America,ewallet\_fdfg321dfg54dfg321dfg3215dfg321df,reserve\_return,2024-04-30,USD,6040.95,USD,6040.95,,dfg231311323d,,,,,Rapyd,,DFG231SDF685DF64T32H1B321DSF8DH,2024-04-22
Awesome Merchant LTD,123456792,Bank of America,ewallet\_fdfg321dfg54dfg321dfg3215dfg321df,reserve\_return,2024-04-30,USD,6041.86,USD,6041.86,,dfg21f3fg13212,,,,,Rapyd,,DFG21FHGJK89YU32HM1CB1SDFG654H,2024-04-22
Awesome Merchant LTD,123456793,Bank of America,ewallet\_fdfg321dfg54dfg321dfg3215dfg321df,Collections,2024-04-30,USD,46079.805,USD,46079.805,,dfg213gd1se1,,USD,"3,539.41","3,539.41",Rapyd,,SDFG231GJ8YU3M21BVN8DFG321FGH13,2024-04-30
Awesome Merchant LTD,123456794,Bank of America,ewallet\_fdfg321dfg54dfg321dfg3215dfg321df,Collections,2024-04-30,USD,4056.075,USD,4056.075,,df3sd3213215,,USD,314.1,314.1,Rapyd,,DFG21SE8FDGFH32G1K5YU321GH3DD,2024-04-30
Awesome Merchant LTD,123456795,Bank of America,ewallet\_fdfg321dfg54dfg321dfg3215dfg321df,Collections,2024-04-30,USD,46243.065,USD,46243.065,,dfs123ds1332,,USD,"3,551.88","3,551.88",Rapyd,,DFG21YTJ8GH32VBM1F8SD321DFGH8,2024-04-30
Awesome Merchant LTD,123456796,Bank of America,ewallet\_fdfg321dfg54dfg321dfg3215dfg321df,reserve\_return,2024-04-30,USD,800.12,USD,800.12,,werty3841000,,,,,Rapyd,,SDFG3218YJ36FGH1DF32DFR8J321FNH,2024-04-30
Awesome Merchant LTD,123456797,Bank of America,ewallet\_fdfg321dfg54dfg321dfg3215dfg321df,reserve\_return,2024-04-30,USD,8658.34,USD,8658.34,,eyy32165486,,,,,Rapyd,,SDFG1TH8321SD8SD32DFH1Y8651GN3SA,2024-04-30
Awesome Merchant LTD,123456798,Bank of America,ewallet\_fdfg321dfg54dfg321dfg3215dfg321df,reserve\_return,2024-04-30,USD,8728.435,USD,8728.435,,iuj2103165658,,,,,Rapyd,,DFG1YJ8FGN321X58SE3GFH1GHJ8FH,2024-04-30
[##### Merchant Settlement Report Beta](#idp266162_body)
[###### File Version](#idp266164_body)
The current file format version is _1.5_
###### Header Format
Line 1 of the CSV file contains the following information:
### Timestamps Format
All timestamps are in UTC.
| Field | Value |
| --- | --- |
| Report Title | Rapyd Merchant Settlement Report Beta |
| Version | Report version number |
| Merchant | The name of the organization as registered with Rapyd |
| From | the string "From" |
| Start date | Period start date |
| To | the string "To" |
| End date | Period end date |
###### Data Format
The Merchant Settlement Beta report includes all the fields in the current report as well as the newly included fields.
Starting from Line 2 of the CSV file, the information contained follows the below guideline:
| Field | Value |
| --- | --- |
| Beneficiary Name | The beneficiary name of the account owner, as registered with Rapyd |
| Account Number | The account number of the bank account to which the settlement was remitted to |
| Bank Code | The bank code of the bank account to which the settlement was remitted to
The code may state SWIFT BIC, ABA, sort code, etc., depending on your bank's location. |
| Wallet ID | The wallet ID funds were settled from |
| Settlement Date | The date the settlement was processed and remitted by Rapyd.
Format: **YYYY-MM-DD** |
| Settlement Currency | The currency of the transactions, as settled with the merchant. Format: Three-letter ISO 4217 code. Relevant to collections. |
| Settlement Amount | The amount settled with the merchant for transactions that settled on the settlement date. |
| Settlement Reference ID | The identifier of the settlement completed by Rapyd on the settlement configuration. |
| Reserve Currency | The currency of the reserve funds. |
| Reserve Amount in Reserve Currency | The total reserve amount denominated in the reserve currency. |
| Reserve Amount in Settlement Currency | The total reserve amount denominated in the settlement currency. |
| Initiator | Indicates whether the settlement is requested by Rapyd or the client. The settlement is requested by the client for **settlement on demand** transactions.
Possible Values:
* Rapyd
* Client |
| Client Reference | The Settlement Reference ID for **settlement on demand** transactions. Other possible values: **null**. |
| Settlement ID | The identifier of the settlement generated by Rapyd. |
[##### Merchant Monthly Settlement Report](#idp266309_body)
###### Header Format
Line 1 of the CSV file contains the following information:
### Timestamps Format
All timestamps should be in UTC.
| Field | Value |
| --- | --- |
| Report Title | Merchant Monthly Settlement Report |
| Version | Version number. |
| Merchant | Alias of the merchant. |
| From | Start of the report. |
| YYYY-MM-DD hh:mm:ss | Timestamp at start. |
| To | End of the report. |
| YYYY-MM-DD hh:mm:ss | Timestamp at end. |
###### Data Format
### Transactions
Transactions closed within a day (again, UTC time) will be considered for settlement starting that day, i.e. the system's cutoff time is 12:00 AM UTC.
| Field | Value |
| --- | --- |
| Account ID | Alias of the merchant's account on the Rapyd platform. Relevant to collections. |
| Account Number | The merchant's account number at the merchant's bank. Relevant to collections. |
| Bank | The name of the merchant's bank where the settlement is managed. Relevant to collections. |
| Wallet ID | The wallet token from which the funds were settled. |
| Type | * **Collections** - Transactions created by [Create Payment](create-payment.html "Create Payment")
or [Create Refund](create-refund.html "Create Refund")
. If the merchant has two or more accounts for collections, each account appears on a separate line.
* **Disbursements** - Transactions created by [Create Payout](create-payout.html "Create Payout")
.
* **Issued Bank Account** - Transactions collected via the bank account issuing platform. |
| Settlement Date | The date when the funds were settled. |
| Settlement Currency | The currency of the transactions, as settled with the merchant. Format: Three-letter ISO 4217 code. Relevant to collections. |
| Settlement Amount | The amount settled with the merchant for transactions that settled on the settlement date. |
| Settlement Wallet Account Currency | * Collections - The currency of the funds collected.
* Disbursements - The currency of the funds received by the beneficiary.
Three-letter ISO 4217 code. |
| Settlement Amount in Wallet Account Currency | The client wallet currency equivalent of the amount settled with the merchant. |
| Prev Negative Settlement | The total amount that the merchant owes to Rapyd from previous days. Relevant when there is a past negative remittance. |
| Settlement Reference ID | The identifier of the settlement completed by Rapyd on the settlement configuration. |
| Reserve Currency | The currency of the reserve funds. |
| Reserve Amount in Reserve Currency | The total reserve amount denominated in the reserve currency. |
| Reserve Amount in Settlement Currency | The total reserve amount denominated in the settlement currency. |
| Settlement ID | The identifier of the settlement generated by Rapyd. |
###### Sample Report
**Merchant Monthly Settlement Report**
Merchant Monthly Settlement Report Beta,v1.5,Awesome Merchant LTD,From,2024/03/01,To,2024/04/01,,,,,,,,,
Account ID,Account Number,Bank,Wallet ID,Type,Settlement Date,Settlement Currency,Settlement Amount,Settlement Wallet Account Currency,Settlement Amount in Wallet Account Currency,Prev Negative Settlement,Settlement Reference ID,Reserve Currency,Reserve Amount in Reserve Currency,Reserve Amount in Settlement Currency,Settlement ID
Awesome Merchant LTD,123456789,Bank of America,ewallet\_fdfg321dfg54dfg321dfg3215dfg321df,Collections,2024-03-01,USD,62005.645,USD,62005.645,,ds321fds5sdf,USD,"4,758.96","4,758.96",SDFG5DFG321DFG6548UKJ3K321HJM3
Awesome Merchant LTD,123456790,Bank of America,ewallet\_fdfg321dfg54dfg321dfg3215dfg321df,Collections,2024-03-01,USD,61972.025,USD,61972.025,,dfg321df3dfg1,USD,"4,757.66","4,757.66",DFHF856GHJ231DF32GFH8YUJ321G3FGH1
Awesome Merchant LTD,123456791,Bank of America,ewallet\_fdfg321dfg54dfg321dfg3215dfg321df,Collections,2024-03-01,USD,6040.95,USD,6040.95,,dfg231311323d,USD,,,DFG231SDF685DF64T32H1B321DSF8DH
Awesome Merchant LTD,123456792,Bank of America,ewallet\_fdfg321dfg54dfg321dfg3215dfg321df,reserve\_return,2024-03-01,USD,6041.86,USD,6041.86,,dfg21f3fg13212,,,,DFG21FHGJK89YU32HM1CB1SDFG654H
Awesome Merchant LTD,123456793,Bank of America,ewallet\_fdfg321dfg54dfg321dfg3215dfg321df,reserve\_return,2024-03-01,USD,46079.805,USD,46079.805,,dfg213gd1se1,,"3,539.41","3,539.41",SDFG231GJ8YU3M21BVN8DFG321FGH13
Awesome Merchant LTD,123456794,Bank of America,ewallet\_fdfg321dfg54dfg321dfg3215dfg321df,reserve\_return,2024-03-01,USD,4056.075,USD,4056.075,,df3sd3213215,,314.1,314.1,DFG21SE8FDGFH32G1K5YU321GH3DD
Awesome Merchant LTD,123456795,Bank of America,ewallet\_fdfg321dfg54dfg321dfg3215dfg321df,Collections,2024-03-02,USD,46243.065,USD,46243.065,,dfs123ds1332,USD,"3,551.88","3,551.88",DFG21YTJ8GH32VBM1F8SD321DFGH8
Awesome Merchant LTD,123456796,Bank of America,ewallet\_fdfg321dfg54dfg321dfg3215dfg321df,Collections,2024-03-02,USD,800.12,USD,800.12,,werty3841000,USD,333.45,333.45,SDFG3218YJ36FGH1DF32DFR8J321FNH
Awesome Merchant LTD,123456797,Bank of America,ewallet\_fdfg321dfg54dfg321dfg3215dfg321df,Collections,2024-03-02,USD,8658.34,USD,8658.34,,eyy32165486,USD,321.22,321.22,SDFG1TH8321SD8SD32DFH1Y8651GN3SA
Awesome Merchant LTD,123456798,Bank of America,ewallet\_fdfg321dfg54dfg321dfg3215dfg321df,reserve\_return,2024-03-02,USD,8728.435,USD,8728.435,,iuj2103165658,,,,DFG1YJ8FGN321X58SE3GFH1GHJ8FH
In this section:
Search results
--------------
No results found
* [Prev](merchant-reconciliation-report.html#idp265919)
* [Next](merchant-settlement-report.html#idp265940)
---
# Rapyd Payments Plugin for Wix
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Plugins](plugins.html)
* [Plugins and Add-Ons](plugins-and-add-ons.html)
* Rapyd Payments Plugin for Wix
* [Prev](rapyd-payments-plugin-for-shopify.html#idp420695)
* [Next](rapyd-payments-plugin-for-wix.html#idp420848)
#### Rapyd Payments Plugin for Wix
Accept cross-border payments from your OpenCart store.
Offering more payment methods drives increased conversions and customer loyalty. Rapyd offers this plugin for over 50 countries.
### Rapyd Account Connection Limit
You can only connect one store per Rapyd Account.
You must be domiciled in one of the following countries in order to accept payments.
[##### Supported Countries](#idp420848_body)
Belgium, Cyprus, Hong Kong, Iceland, Mexico, Norway, Romania, Singapore, Switzerland, United Kingdom.
##### How to Activate Wix
[###### Step 1: Get Started with Rapyd Payments](#idp420853_body)
[Sign up](https://support.rapyd.net)
With a Rapyd Client Portal Account, you can:
* Activate and set up your plugin.
* Optionally, create a transaction in your store.
* View supported payment methods.
* View payment reports.
* Invite team members.
* Complete KYB steps to fully activate your account.
[###### Step 2: Activate Your Wix Plugin in Rapyd Client Portal](#idp420871_body)
1. Sign in to Client Portal and navigate to **Plugins**. Select the Wix panel.
2. On the **Wix** page, click the **Active** toggle button.

[###### Step 3: Configure the Production Mode](#idp420884_body)
### Note
The Client Portal must be in production mode.
1. Sign in to your Wix dashboard and go to **Settings > eCommerce and Finance**.
2. Click on **Accept Payments**.

### Apple Pay
European customers with an Apple account may use Apple Pay for purchases when using Safari. [See supported countries here](https://support.apple.com/en-us/HT207957)
.
3. Scroll down to **Rapyd Payments**, and click **Manage Account**.

The **Manage Your Account** window appears.

4. Enter your Rapyd **Access Key** and **Secret Key** for the production environment in the **Access key** and **Secret key** fields. See also [Plugins and Add-Ons](plugins-and-add-ons.html "Plugins and Add-Ons")
.
5. Click the ‘Save’ button. F. To fully activate your account for production mode you’ll need to complete the KYB form for compliance review in the Rapyd Client Portal.
### Listing Payments in Client Portal
In circumstances where the paid amount is less than the original amount, use the Client Portal to verify the actual amount that was paid, and not the store's admin portal.
[###### Step 4: Set Up a Landing Page URL](#idp420926_body)
After the checkout process completes, the customer can be forwarded to a landing page. This may be the main URL of the ecommerce site or any other landing page that you may want to define. To set the landing page URL:
1. Sign in to the Client Portal and navigate to **Settings > Branding**.

2. Click on the link icon and enter the URL of the landing page in the **Fallback URL** field.

3. Click **Save**.
In this section:
Search results
--------------
No results found
* [Prev](rapyd-payments-plugin-for-shopify.html#idp420695)
* [Next](rapyd-payments-plugin-for-wix.html#idp420848)
---
# Delete Discount from Subscription
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [API Reference](api-reference.html)
* [Rapyd Collect](rapyd-collect-363484.html)
* [Subscription](subscription.html)
* [Subscription](subscription-364807.html)
* Delete Discount from Subscription
* [Prev](cancel-subscription.html)
* [Next](subscription-errors.html)
###### Delete Discount from Subscription
Delete the discount that was assigned to a subscription.
This method does not affect the coupon that the discount was derived from.
[###### Parameters](#idp305488_body)
[###### Request Path Parameters](#idp305490_body)
* * subscription
* ID of the subscription. String starting with **sub\_**.
[###### Request Header Parameters](#idp305500_body)
[###### Response Parameters](#idp305550_body)
###### Code Samples
* * .NET
* using System;
using System.Text.Json;
namespace RapydApiRequestSample
{
class Program
{
static void Main(string\[\] args)
{
try
{
string subscription = "sub\_4802e0187b3c0acdd3ed8d0c00f85610";
string result = RapydApiRequestSample.Utilities.MakeRequest("DELETE", $"/v1/payments/subscriptions/{subscription}/discount");
Console.WriteLine(result);
}
catch (Exception e)
{
Console.WriteLine("Error completing request: " + e.Message);
}
}
}
}
* * JavaScript
* const makeRequest = require('/utilities').makeRequest;
async function main() {
try {
const result = await makeRequest(
'DELETE',
'/v1/payments/subscriptions/sub\_4802e0187b3c0acdd3ed8d0c00f85610/discount'
);
console.log(result);
} catch (error) {
console.error('Error completing request', error);
}
}
* * PHP
* /utilities.php";
include($path);
try {
$object = make\_request('delete', '/v1/payments/subscriptions/sub\_4802e0187b3c0acdd3ed8d0c00f85610/discount');
var\_dump($object);
} catch(Exception $e) {
echo "Error: $e";
}
?>
* * Python
* from pprint import pprint
from utilities import make\_request
result = make\_request(method='delete', path='/v1/payments/subscriptions/sub\_4802e0187b3c0acdd3ed8d0c00f85610/discount')
pprint(result)
* /v1/payments/subscriptions/:subscription/discount
* Delete Discount from Subscription
* curl -X delete
https://sandboxapi.rapyd.net/v1/payments/subscriptions/sub\_4802e0187b3c0acdd3ed8d0c00f85610/discount
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "64fc61d1-7b02-45b4-9130-ef4683d1b912"
},
"data": {
"id": "dis\_4802e0187b3c0acdd3ed8d0c00f85610",
"deleted": true
}
}
In this section:
The number of seconds elapsed since the beginning of the Unix epoch, which was 00:00:00 GMT on January 1, 1970. 10-digit integer.
Search results
--------------
No results found
* [Prev](cancel-subscription.html)
* [Next](subscription-errors.html)
---
# Rapyd Payments Plugin for Shopify
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Plugins](plugins.html)
* [Plugins and Add-Ons](plugins-and-add-ons.html)
* Rapyd Payments Plugin for Shopify
* [Prev](rapyd-payments-app-for-woocommerce.html#idp420663)
* [Next](rapyd-payments-plugin-for-shopify.html#idp420690)
#### Rapyd Payments Plugin for Shopify
Convert more customers by accepting their preferred payment methods like ewallets, cash, and bank transfers.
Offering more payment methods drives increased conversions and customer loyalty. Rapyd offers this plugin for over 50 countries.
### Rapyd Account Connection Limit
You can only connect one store per Rapyd Account.
You must be domiciled in one of the following countries in order to accept payments.
[##### Supported Countries](#idp420690_body)
Andorra, Armenia, Austria, Australia, Belgium, Bosnia and Herzegovina, Brazil, Bulgaria, Canada, Chile, Colombia, Croatia, Cyprus, Czech Republic, Denmark, Dominican Republic, El Salvador, Estonia, Finland, France, Georgia, Germany, Gibraltar, Greece, Greenland, Hong Kong, Hungary, Iceland, India, Indonesia, Ireland, Israel, Italy, Japan, Latvia, Liechtenstein, Lithuania, Luxembourg, Macedonia, Malaysia, Malta, Mexico, Moldova, Monaco, Montenegro, Netherlands, New Zealand, Norway, Peru, Philippines, Poland, Portugal, Romania, San Marino, Singapore, Slovakia, Slovenia, South Africa, South Korea, Spain, Sweden, Switzerland, Taiwan, Thailand, Turkey, UK, Vatican, Vietnam
##### How to Activate Shopify
[###### Step 1: Get Started with Rapyd Payments](#idp420695_body)
[Sign up](https://support.rapyd.net)
With a Rapyd Client Portal Account, you can:
* Activate and set up your plugin.
* Access sandbox mode and test payments.
* View supported payment methods.
* View payment reports.
* Invite team members.
* Complete KYB steps to fully activate your account.
[###### Step 2: Installation on Shopify](#idp420713_body)
1. Go to the Shopify App page by clicking on this [link](https://apps.shopify.com/rapyd-payments)
.

2. Click on the **Add App** button, and then select the Shopify store from the list. If the store is not in the list then click on the **Log in with shop URL** link.

3. Click on the **Install app** button.

[###### Step 3: Activate the Shopify Plugin in Rapyd Client Portal](#idp420735_body)
### Note
You can activate only **one** Shopify store per set of Rapyd plugin keys. If you have multiple Shopify stores then create a Rapyd instance per store. An attempt to activate multiple Shopify stores with the same Rapyd plugin keys will fail.
1. Sign in to Client Portal and navigate to **Plugins**.
2. In the **ShopifyApp** window, click the **Active** toggle button, and copy the **Secret Key** and **Access Key** of the production environment.

### Note
You can search supported countries in the search bar.
3. Paste your Shopify plugin **Secret Key** and **Access Key** for the production environment in the Shopify onboarding page.

4. Set the mode to **Sandbox** by toggling its button as displayed in the following screenshot.

5. Copy the Shopify plugin sandbox keys to the Shopify onboarding page, and then click the **Submit** button.

[###### Step 4: Testing the Shopify Plugin](#idp420774_body)
### Note
When test mode is activated, all transactions are simulated.
1. Scroll down to the bottom of the page, and click on the **Activate Rapyd Payments** button. In the Rapyd Payments setup section, select the **Enable test mode** checkbox, and click the **Save** button.

2. Go to your Shopify store as a customer and add an item to the cart.
3. Add the customer details and then move to the payment screen. Select **Rapyd Payments** as the payment method.

4. Click **Complete Order**.

5. The browser redirects to a Rapyd checkout page for completing the payment.

6. Order Cancellation: When an order is canceled, the underlying payment is supposed to be canceled as well. However, if that process fails because of a communications failure or other cause, the list of orders in the Shopify interface does not show the failure of the cancellation of the payment. To verify the status of the payment, you must select the specific order transaction and view its **Timeline**.

After you have finished testing the plugin, you can switch to **production** mode.
### Apple Pay
European customers with an Apple account may use Apple Pay for purchases when using Safari. [See supported countries here](https://support.apple.com/en-us/HT207957)
.
### Note
The **Accepted Payments** section displays the enabled payment methods. Specific payment methods cannot be disabled.
[###### Step 5: Set up a Landing Page URL](#idp420821_body)
After the checkout process completes, the customer can be forwarded to a landing page. This may be the main URL of the ecommerce site or any other landing page that you may want to define. To set the landing page URL:
1. Sign in to the Client Portal and navigate to **Settings > Branding**.

2. Click on the link icon and enter the URL of the landing page in the **Fallback URL** field.

3. Click **Save**.
In this section:
Search results
--------------
No results found
* [Prev](rapyd-payments-app-for-woocommerce.html#idp420663)
* [Next](rapyd-payments-plugin-for-shopify.html#idp420690)
---
# Subscription Canceled Webhook
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [API Reference](api-reference.html)
* [Rapyd Collect](rapyd-collect-363484.html)
* [Subscription](subscription.html)
* [Subscription Webhooks](subscription-webhooks.html)
* Subscription Canceled Webhook
* [Prev](new-cycle-started-webhook.html)
* [Next](subscription-past-due-webhook.html)
###### Subscription Canceled Webhook
The **CUSTOMER\_SUBSCRIPTION\_CANCELED** webhook is sent when a subscription is canceled.
[###### Parameters](#idp315787_body)
[###### Webhook Header Parameters](#idp315789_body)
[###### Webhook Root Parameters](#idp315829_body)
[###### Webhook Data Parameters](#idp315902_body)
* CUSTOMER\_SUBSCRIPTION\_CANCELED Webhook
* {
"id": "wh\_c83f08b52d072cd6168a081cf7c1d612",
"type": "CUSTOMER\_SUBSCRIPTION\_CANCELED",
"data": {
"id": "sub\_005ca057b15771a535469a60ccce98a2",
"type": "payment",
"status": "canceled",
"billing": "pay\_automatically",
"discount": null,
"ended\_at": null,
"metadata": {},
"trial\_end": null,
"created\_at": 1641802550,
"canceled\_at": 1642032359,
"tax\_percent": 0,
"trial\_start": null,
"payout\_fields": null,
"customer\_token": "cus\_d3ed65d5091a8398cc3651bcedec1201",
"days\_until\_due": null,
"payment\_fields": null,
"payment\_method": "card\_85264b18bc1bfb949dbb2d88d3d5c12c",
"current\_period\_end": 1642032359,
"subscription\_items": {
"url": "/v1/subscription\_items?subscription=sub\_005ca057b15771a535469a60ccce98a2",
"data": \[{\
"id": "subi\_139cc833a43aa340ee25ca59a4a34ea6",\
"plan": {\
"id": "plan\_a2b5060d3e93d4c32883ac2b39c3f2de",\
"tiers": \[\],\
"amount": 1050,\
"product": {\
"id": "product\_2ddd6f6b43f598d30543ef23ab806b58",\
"name": "Acme music stream",\
"skus": \[\],\
"type": "services",\
"active": true,\
"images": \[\],\
"metadata": {},\
"shippable": false,\
"attributes": \[\],\
"created\_at": 1641481860,\
"unit\_label": "",\
"updated\_at": 1641481860,\
"description": "",\
"package\_dimensions": {\
"width": 0,\
"height": 0,\
"length": 0,\
"weight": 0\
},\
"statement\_descriptor": ""\
},\
"currency": "USD",\
"interval": "day",\
"metadata": {},\
"nickname": "Plan 1050",\
"created\_at": 1641802015,\
"tiers\_mode": "",\
"usage\_type": "licensed",\
"billing\_scheme": "per\_unit",\
"interval\_count": 1,\
"aggregate\_usage": "sum",\
"transform\_usage": {\
"round": "up",\
"divide\_by": 1\
},\
"trial\_period\_days": 0\
},\
"created": 1641802550,\
"metadata": null,\
"quantity": 1\
}\
\],
"has\_more": false,
"total\_count": 0
},
"billing\_cycle\_anchor": 1641802550,
"cancel\_at\_period\_end": true,
"current\_period\_start": 1641975350
},
"trigger\_operation\_id": "b55a493d-ae8a-4eb8-93a3-2624145a58ef",
"status": "NEW",
"created\_at": 1642032362,
"extended\_timestamp": 1642032362666,
}
In this section:
The number of seconds elapsed since the beginning of the Unix epoch, which was 00:00:00 GMT on January 1, 1970. 10-digit integer.
Search results
--------------
No results found
* [Prev](new-cycle-started-webhook.html)
* [Next](subscription-past-due-webhook.html)
---
# Rapyd Payments Plugin for Magento
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Plugins](plugins.html)
* [Plugins and Add-Ons](plugins-and-add-ons.html)
* Rapyd Payments Plugin for Magento
* [Prev](rapyd-payments-plugin-for-wix.html#idp420926)
* [Next](rapyd-payments-plugin-for-magento.html#idp420953)
#### Rapyd Payments Plugin for Magento
Connect your Magento ecommerce site to card acceptance and hundreds of local payment methods across the globe.
Offering more payment methods drives increased conversions and customer loyalty. Rapyd offers this plugin for over 50 countries.
### Rapyd Account Connection Limit
You can only connect one store per Rapyd Account.
You must be domiciled in one of the following countries in order to accept payments.
[##### Supported Countries](#idp420953_body)
Andorra, Armenia, Austria, Australia, Belgium, Bosnia and Herzegovina, Brazil, Bulgaria, Canada, Chile, Colombia, Croatia, Cyprus, Czech Republic, Denmark, Dominican Republic, El Salvador, Estonia, Finland, France, Georgia, Germany, Gibraltar, Greece, Greenland, Hong Kong, Hungary, Iceland, India, Indonesia, Ireland, Israel, Italy, Japan, Latvia, Liechtenstein, Lithuania, Luxembourg, Macedonia, Malaysia, Malta, Mexico, Moldova, Monaco, Montenegro, Netherlands, New Zealand, Norway, Peru, Philippines, Poland, Portugal, Romania, San Marino, Singapore, Slovakia, Slovenia, South Africa, South Korea, Spain, Sweden, Switzerland, Taiwan, Thailand, Turkey, UK, USA, Vatican, Vietnam, Virgin Islands (USA)
[##### Prerequisites](#UUID-0a72a4f5-3b33-564b-0422-39cda598528f_UUID-31e22f75-c283-d617-f62b-85a846cca08a_body)
Rapyd Client Portal account
With a Rapyd Client Portal account, you can:
* Activate and set up your plugin.
* Access sandbox mode and test payments.
* View supported payment methods.
* View payment reports.
* Invite team members.
* Complete KYB steps to fully activate your account.
[Sign up](https://support.rapyd.net)
##### How to Activate Magento
[###### Step 1: Activate the Plugin in Rapyd Client Portal](#idp420977_body)
1. Sign in to Client Portal and navigate to **Plugins**. Select **Magento**.
2. In the **Magento** window, click the **Active** toggle button.
### Note
You can search supported countries in the search bar.

[###### Step 2: Plugin Installation on Magento](#idp420993_body)
[###### Prerequisites](#idp420995_body)
* Enable the `cron` command on your system. See also Magento's [documentation](https://devdocs.magento.com/guides/v2.3/config-guide/cli/config-cli-subcommands-cron.html)
.
* Verify that the web server has full write permissions to the Magento directory. This can be achieved by running the following terminal command:
$ chown –R /magento\_directory
[###### Installation via Magento Admin Panel](#idp421005_body)
1. Place an order for the Rapyd plugin via the [Magento Marketplace](https://marketplace.magento.com)
.
### Note
Magento calls its Plugins 'Extensions'.
2. Sign in to your Magento Admin Panel.
3. Navigate to **System > Tools > Web Setup Wizard**.

4. Click on **Extension Manager**
5. Enter your Magento Marketplace authentication keys that can be found on the Magento Marketplace.
6. Go to your [Magento Marketplace Account section](https://account.magento.com/customer/account/login)
, and click **Install** in **New Purchases**. Follow the other instructions on that page to fully install the plugin.
### Note
The installation may take 5 minutes or more. Leave the window open to allow the installation to finish. A successful installation can be verified by checking that the contents in the the directory **var/.update\_\*** have been updated.
[###### Installation via Composer](#idp421034_body)
1. Run the following terminal command in your Magento directory:
$ composer require rapyd/rapydmagento2
### Note
Verify that you saved the authentication keys.
2. Set up the plugin by running the following terminal commands:
$ php bin/magento setup:upgrade
> php bin/magento cache:flush
> php bin/magento cache:clean
3. Compile and deploy the static files via the following terminal commands:
$ php bin/magento setup:di:compile
> php bin/magento setup:static-content:deploy
[###### Step 3: Configure the Plugin for Testing](#UUID-0a72a4f5-3b33-564b-0422-39cda598528f_UUID-df1e75be-e5fd-c354-dac0-48ee30a3c28a_body)
1. In the Admin Panel, go to **Stores > Configuration**.

2. In the Configuration window, click on **Sales > Payment Methods**.

3. Scroll down to the **Rapyd Payment Settings** that is located in the **Other Payment Methods** section.

4. Set the **Enabled** and **Test Mode** fields to 'Yes'
5. Enter your Rapyd **Access Key** and **Secret Key** for the sandbox environment in the **Test access key** and **Test secret key** fields. See also [Plugins and Add-Ons](plugins-and-add-ons.html "Plugins and Add-Ons")
6. Enter '1' in the Sort Order field.
### Note
The Rapyd Client Portal must be in sandbox mode during the testing phase. Refer to [Developers](developers.html "Developers")
on how to switch to sandbox.

7. Click on the **Save Config** button.
[###### Step 4: Testing the Plugin](#UUID-0a72a4f5-3b33-564b-0422-39cda598528f_UUID-105a4b3a-2a6a-fdb6-6ee3-5a703c1813fe_body)
1. Go to your Magento test site as a customer and add an item to the cart.
2. Click on the number next to the shopping cart icon, and then click on the **Proceed to Checkout** banner.

3. Fill in all the required **Shipping** fields and click **Next**.

4. Select a Rapyd payment method.
5. Click on the **Place Order** button.

6. If required, enter additional payment details, and click the **Click to Pay** button.

7. Click the **Finish** button on the screen that appears.

8. The last payment screen displays the status of the payment.

9. Go to the **Sales > Orders** section of the Magento Admin panel and verify that the payment you have made is displayed.

After you have finished testing the plugin, you can switch to production mode.
[###### Step 5: Configuring the Plugin for Production](#UUID-0a72a4f5-3b33-564b-0422-39cda598528f_UUID-643560b3-c15b-6cc0-c382-81e7bcd25dca_body)
1. Access the Rapyd Client Portal and set the Client Portal to production mode.
2. Sign in to your Magento Admin Panel, and scroll down to the **Rapyd Payment Settings** that is located in the **Other Payment Methods** section.

3. Set the **Enabled** field to 'Yes', and enter your Rapyd **Secret Key** and **Access Key** for the production environment. Note that these keys are different from the sandbox keys. See also [Plugins and Add-Ons](plugins-and-add-ons.html "Plugins and Add-Ons")
.
4. Set the **Test Mode** field to 'No'.

5. Click on the **Save Config** button.
[###### Step 6: Set Up a Landing Page URL](#UUID-0a72a4f5-3b33-564b-0422-39cda598528f_UUID-9972fd2f-f45c-913c-f13f-04c60dd73ca6_body)
After the checkout process completes, the customer can be forwarded to a landing page. This may be the main URL of the ecommerce site or any other landing page that you may want to define. To set the landing page URL:
1. Sign in to the Client Portal and navigate to **Settings > Branding**.

2. Click on the link icon and enter the URL of the landing page in the **Fallback URL** field.

3. Click **Save**.
In this section:
Search results
--------------
No results found
* [Prev](rapyd-payments-plugin-for-wix.html#idp420926)
* [Next](rapyd-payments-plugin-for-magento.html#idp420953)
---
# Creating a Customer Support Ticket
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Product Guide](product-guide.html)
* [Client Support](client-support.html)
* Creating a Customer Support Ticket
* [Prev](client-support.html#idp247911)
* [Next](creating-a-customer-support-ticket.html#idp247921)
#### Creating a Customer Support Ticket
Connect with our support team.
[##### How to Submit a Support Ticket](#idp247921_body)
1. Sign in as described in [Accessing the Client Portal](accessing-the-client-portal.html "Accessing the Client Portal")
and click on the question mark icon in the upper right corner.

2. The **Support center** page appears.

3. Click the **Contact support** button in the upper right corner.

4. The **Contact support** panel appears.
5. Complete the Description field, and click **Next**.

6. Complete the following required fields:
* **Category** - general, technical, or financial query
* **Environment** - Production or Sandbox
* **Subject** - The subject of the ticket
* **Discovery date** - The time frame when the issue was discovered
* **Total transaction value** - The value of the affected transaction
* **How many transactions or users were affected** - Single, Partial, All, or Not relevant
7. Click **Next**.

8. (Optional) Upload any relevant files for your support ticket by clicking the **+** button.

9. Click **Submit**.
You can follow up an urgent ticket with our support hotline:
| Location | Phone Number |
| --- | --- |
| United States | +1-209-638-4373 |
| United Kingdom | +44 20 3398 1076 |
| United Kingdom | +44 20 3744 3095 (POS support) |
| Singapore | +65 6016 3021 |
In this section:
Search results
--------------
No results found
* [Prev](client-support.html#idp247911)
* [Next](creating-a-customer-support-ticket.html#idp247921)
---
# Save Card Details With Rapyd Checkout
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Product Guide](product-guide.html)
* [Rapyd Collect](rapyd-collect.html)
* [Rapyd Checkout Overview](rapyd-checkout-overview.html)
* Save Card Details With Rapyd Checkout
* [Prev](complete-payment.html#idp217923)
* [Next](save-card-details-with-rapyd-checkout.html#idp217948)
##### Save Card Details With Rapyd Checkout
The Rapyd Checkout page allows you to save a customer’s card details when they make a payment. You can use the saved payment information for future payments.
The saved card information is tokenized, which follows PCI-DSS standards. This allows sensitive information to be stored safely. Saving card details using the Rapyd Checkout Page enables you to link the card details to the customer.
[###### Save Card Details With Rapyd Checkout Page Example](#idp217948_body)
1. Enter your card information.

2. (Optional): Click the **Save card for future payments** checkbox.
3. Click **Place Your Order** to complete the payment.
4. Redirect to the payment success page.
5. Click **Finish**.
[###### Save Card Details With Rapyd Checkout Page Workflow](#idp217967_body)

1. You request Rapyd to generate a Hosted Checkout Page.
2. Rapyd processes your request and sends the response with the redirect URL.
3. You display the redirect URL to the customer.
4. The customer completes the payment on the hosted page.
[###### Card Payment Rapyd Checkout Message Sequences](#idp217981_body)
The message sequence diagrams below describe how information is exchanged between Rapyd, the merchant, the merchant's customers, and the card network.
Card Payment Rapyd Checkout - Success

Card Payment Rapyd Checkout - Failure

[###### How Saving Card Details With Rapyd Checkout Works](#idp217992_body)
You need to complete the following steps in order to generate a Hosted Checkout Page:
1. [Create a Customer](create-customer.html "Create Customer")
(API Integration or via the Client Portal)
2. Generate a Hosted Checkout Page (API Integration or via the Client Portal)
[###### Generating the Hosted Checkout Page](#idp218001_body)
You must pass the customer ID (a string starting with **cus\_**) in the request when generating the Hosted Checkout Page. This enables the card details to be saved for future payments.
Description of Body Parameters
See [Create Checkout Page](create-checkout-page.html "Create Checkout Page")
for additional details about the parameters.
| Body Parameter | Required | Description |
| --- | --- | --- |
| amount | yes | The amount of the payment, in units of currency defined in **currency**. |
| country | yes | The two-letter ISO 3166-1 ALPHA-2 code for the country. |
| currency | yes | Three-letter ISO 4217 code for the currency. |
| customer | no | ID of the customer, a string starting with **cus\_**.
**Note**: Must be included to enable the card details to be saved. |
###### Create Checkout Page Request
* * Request
* // Request URL: POST https://sandboxapi.rapyd.net/v1/checkout
// Message body:
{
"amount": 123.45,
"complete\_payment\_url": "http://example.com/complete",
"country": "GB",
"currency": "GBP",
"customer": "cus\_ecfab8b87e2fa11d66b95cc1f2c94037",
"error\_payment\_url": "http://example.com/error",
"merchant\_reference\_id": "950ae8c6-78",
"cardholder\_preferred\_currency": true,
"language": "en",
"metadata": {
"merchant\_defined": true
},
"expiration": 1708498532,
"payment\_method\_types\_exclude": \[\]
}
###### Create Checkout Page Response
[Create Checkout Page](create-checkout-page.html "Create Checkout Page")
describes the fields in the response.
* * Response
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "47d0211e-9da3-4846-ae28-f7fc1d2438da"
},
"data": {
"id": "checkout\_0d7e080a7162c785ebcb8b416b1c0860",
"status": "NEW",
"language": "en",
"merchant\_color": null,
"merchant\_logo": null,
"merchant\_website": "https://www.rapyd.net",
"merchant\_customer\_support": {},
"merchant\_alias": "N/A",
"merchant\_terms": null,
"merchant\_privacy\_policy": null,
"page\_expiration": 1708565261,
"redirect\_url": "https://sandboxcheckout.rapyd.net/?token=checkout\_0d7e080a7162c785ebcb8b416b1c0860",
"merchant\_main\_button": "place\_your\_order",
"cancel\_checkout\_url": "https://www.rapyd.net",
"complete\_checkout\_url": "https://www.rapyd.net",
"country": "GB",
"currency": "GBP",
"amount": 123.45,
"payment": {
"id": null,
"amount": 123.45,
"original\_amount": 0,
"is\_partial": false,
"currency\_code": "GBP",
"country\_code": "GB",
"status": null,
"description": "Payment via Checkout",
"merchant\_reference\_id": "950ae8c6-78",
"customer\_token": "cus\_ecfab8b87e2fa11d66b95cc1f2c94037",
"payment\_method": null,
"payment\_method\_data": {},
"expiration": 1708498532,
"captured": false,
"refunded": false,
"refunded\_amount": 0,
"receipt\_email": null,
"redirect\_url": null,
"complete\_payment\_url": "http://example.com/complete",
"error\_payment\_url": "http://example.com/error",
"receipt\_number": null,
"flow\_type": null,
"address": null,
"statement\_descriptor": null,
"transaction\_id": null,
"created\_at": 0,
"updated\_at": 0,
"metadata": {
"merchant\_defined": true
},
"failure\_code": null,
"failure\_message": null,
"paid": false,
"paid\_at": 0,
"dispute": null,
"refunds": null,
"order": null,
"outcome": null,
"visual\_codes": {},
"textual\_codes": {},
"instructions": {},
"ewallet\_id": null,
"ewallets": \[\],
"payment\_method\_options": {},
"payment\_method\_type": null,
"payment\_method\_type\_category": null,
"fx\_rate": null,
"merchant\_requested\_currency": null,
"merchant\_requested\_amount": null,
"fixed\_side": null,
"payment\_fees": null,
"invoice": null,
"escrow": null,
"group\_payment": null,
"cancel\_reason": null,
"initiation\_type": null,
"mid": null,
"next\_action": "not\_applicable"
},
"payment\_method\_type": null,
"payment\_method\_type\_categories": null,
"payment\_method\_types\_include": null,
"payment\_method\_types\_exclude": \[\],
"account\_funding\_transaction": null,
"customer": "cus\_ecfab8b87e2fa11d66b95cc1f2c94037",
"custom\_elements": {
"save\_card\_default": false,
"display\_description": false,
"payment\_fees\_display": true,
"merchant\_currency\_only": false,
"billing\_address\_collect": false,
"dynamic\_currency\_conversion": false
},
"timestamp": 1707355661,
"payment\_expiration": null,
"cart\_items": \[\],
"escrow": null,
"escrow\_release\_days": null
}
}
In this section:
Search results
--------------
No results found
* [Prev](complete-payment.html#idp217923)
* [Next](save-card-details-with-rapyd-checkout.html#idp217948)
---
# Rapyd Payments App for Ecwid
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Plugins](plugins.html)
* [Plugins and Add-Ons](plugins-and-add-ons.html)
* Rapyd Payments App for Ecwid
* [Prev](rapyd-payments-plugin-for-magento.html#UUID-0a72a4f5-3b33-564b-0422-39cda598528f_UUID-9972fd2f-f45c-913c-f13f-04c60dd73ca6)
* [Next](rapyd-payments-app-for-ecwid.html#idp421198)
#### Rapyd Payments App for Ecwid
Start accepting payments from your Ecwid store.
With Rapyd, you can quickly accept more payment methods from more countries. Payment methods like ewallets, bank transfers, cards and cash.
Rapyd offers this Ecwid add-on in over 50 countries.
### Rapyd Account Connection Limit
You can only connect one store per Rapyd Account.
You must be domiciled in one of the following countries in order to accept payments.
[##### Supported Countries](#idp421198_body)
Andorra, Armenia, Austria, Australia, Belgium, Bosnia and Herzegovina, Brazil, Bulgaria, Canada, Chile, Colombia, Croatia, Cyprus, Czech Republic, Denmark, Dominican Republic, El Salvador, Estonia, Finland, France, Georgia, Germany, Gibraltar, Greece, Greenland, Hong Kong, Hungary, Iceland, India, Indonesia, Ireland, Israel, Italy, Japan, Latvia, Liechtenstein, Lithuania, Luxembourg, Macedonia, Malaysia, Malta, Mexico, Moldova, Monaco, Montenegro, Netherlands, New Zealand, Norway, Peru, Philippines, Poland, Portugal, Romania, San Marino, Singapore, Slovakia, Slovenia, South Africa, South Korea, Spain, Sweden, Switzerland, Taiwan, Thailand, Turkey, UK, USA, Vatican, Vietnam, Virgin Islands (USA)
[##### Prerequisites](#UUID-27d7ae92-6b2e-85af-c2c2-6fea5dd74eda_UUID-31e22f75-c283-d617-f62b-85a846cca08a_body)
Rapyd Client Portal account
With a Rapyd Client Portal account, you can:
* Activate and set up your plugin.
* Access sandbox mode and test payments.
* View supported payment methods.
* View payment reports.
* Invite team members.
* Complete KYB steps to fully activate your account.
[Sign up](https://support.rapyd.net)
##### How to Activate Ecwid
[###### Step 1: Activate the App from the Rapyd Client Portal](#idp421222_body)
1. Sign in to Client Portal and navigate to **Plugins**. Click **Ecwid**.
2. On the **Ecwid** page, click the **Active** toggle button.
### Note
You can search supported countries in the search bar.

[###### Step 2: Add the App from the Ecwid Control Panel](#idp421238_body)
1. In the Ecwid control panel, go to **Payment**.

2. Scroll down to the **Payment Alternatives** section, and select **Rapyd Payments** from the **Choose Payment Processor** dropdown menu.

3. Click on the **Add Payment Method** button that appears on the pop-up window.

### Note
**Apple Pay**
European customers with an Apple account may use Apple Pay for purchases when using Safari. [See supported countries here](https://support.apple.com/en-us/HT207957)
.
The **Rapyd Payments** account details page appears.

[###### Step 3: Configure the Sandbox Mode](#idp421271_body)
### Note
The Client Portal must be in sandbox mode during this testing phase. See [Developers](developers.html "Developers")
.
1. In the **Rapyd Payments** account details page, click the **Enable test mode** toggle button.
2. Enter your Rapyd **Access Key** and **Secret Key** for the sandbox environment in the **Test Access key** and **Test Secret key** fields. Note that you should use the unique production keys for the Ecwid plugin. See also [Viewing Plugin Keys](plugins-and-add-ons.html "Plugins and Add-Ons")
3. In the **Appearance options** section, enter a name for the payment method as it will appear in your site’s checkout screen. It is recommended that you provide a name that indicates a test mode.
4. Click on the **Enable this payment method at checkout** toggle button.

5. Click the **Save** button.
6. Go to the **Cart & Checkout** tab in **Settings > General**, and enable the **Ask for a billing address during checkout** setting.

### Note
This billing address setting should also be enabled during production mode.
[###### Step 4: Testing the App](#idp421310_body)
1. Go to your Ecwid ecommerce site as a customer and add an item to the cart.
2. Click on the **Go to Checkout** button.

3. Enter your email address and click the **Checkout** button.

4. Select the **Rapyd Payments** method, enter a billing address, and click on the **Go to Payment** button.

5. For testing purposes, select any type of payment and fill in the additional fields. For example, enter the following test values for a Mastercard card payment:
* Card: Mastercard
* Card number: 4111 1111 1111 1111
* Expiration Date: 12/23
* CVV Code: 123
* Cardholder Name: John Doe
6. Click on the **Place Your Order** button.

7. Click the **Finish** button on the **Payment Successful** screen that appears.

A confirmation message appears.

8. Go to the **My Sales > Orders** section of the Ecwid Admin panel and verify that the payment you have made is displayed with the correct status.

After you have finished testing the app, you can switch to production mode.
[###### Step 5: Configure the Production Mode](#idp421371_body)
### Note
The Client Portal must be in production mode. See [Home Page](home-page.html "Home Page")
.
1. In the Ecwid control panel, go to **Payment**.
2. Click on the **Actions** button of the **Rapyd Payments** window and select **Edit**.

The **Rapyd Payments** account details page appears:

3. Click the **Enable test mode** toggle button to disable it.
4. Enter your Rapyd **Access Key** and **Secret Key** for the production environment in the **Access key** and **Secret key** fields. Note that you should use the unique production keys for the Ecwid plugin. See also [Viewing Plugin Keys](plugins-and-add-ons.html "Plugins and Add-Ons")
.
5. In the **Appearance options** section, enter a name for the payment method as it will appear in your site’s checkout screen. It is recommended that you provide a name that indicates a payment method that your customers can use.

6. Click the **Save** button.
7. To fully activate your account for production mode, you’ll need to complete the KYB form for compliance review in the Rapyd Client Portal.
[###### Step 6: Set Up a Landing Page URL](#idp421414_body)
After the checkout process completes, the customer can be forwarded to a landing page. This may be the main URL of the ecommerce site or any other landing page that you may want to define. To set the landing page URL:
1. Sign in to the Client Portal and navigate to **Settings > Branding**.

2. Click on the link icon and enter the URL of the landing page in the **Fallback URL** field.

3. Click **Save**.
### Note
For more information on customizing your checkout page, see [Hosted Checkout Page Integration](hosted-checkout-page-integration.html "Hosted Checkout Page Integration")
.
In this section:
Search results
--------------
No results found
* [Prev](rapyd-payments-plugin-for-magento.html#UUID-0a72a4f5-3b33-564b-0422-39cda598528f_UUID-9972fd2f-f45c-913c-f13f-04c60dd73ca6)
* [Next](rapyd-payments-app-for-ecwid.html#idp421198)
---
# Rapyd Payments Plugin for PrestaShop
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Plugins](plugins.html)
* [Plugins and Add-Ons](plugins-and-add-ons.html)
* Rapyd Payments Plugin for PrestaShop
* [Prev](rapyd-payments-app-for-ecwid.html#idp421414)
* [Next](rapyd-payments-plugin-for-prestashop.html#idp421446)
#### Rapyd Payments Plugin for PrestaShop
Accept cross-border payments from your OpenCart store.
Offering more payment methods drives increased conversions and customer loyalty. Rapyd offers this plugin for over 50 countries.
Download it now from the [PrestaShop Addons Marketplace](https://addons.prestashop.com/en/payment-card-wallet/86167-rapyd-payments.html)
or from your PrestaShop control panel. For detailed information, read the full instructions on this page.
### Rapyd Account Connection Limit
You can only connect one store per Rapyd Account.
You must be domiciled in one of the following countries in order to accept payments.
[##### Supported Countries](#idp421446_body)
Andorra, Australia, Austria, Belgium, Bosnia and Herzegovina, Brazil, Bulgaria, Canada, Chile, Colombia, Croatia, Cyprus, Czech Republic, Denmark, Dominican Republic, El Salvador, Estonia, Finland, France, Georgia, Germany, Gibraltar, Greece, Greenland, Hong Kong, Hungary, Iceland, India, Indonesia, Ireland, Israel, Italy, Japan, Latvia, Liechtenstein, Lithuania, Luxembourg, Macedonia, Malaysia, Malta, Mexico, Moldova, Monaco, Montenegro, Netherlands, New Zealand, Norway, Peru, Philippines, Poland, Portugal, Romania, San Marino, Singapore, Slovak Republic (Slovakia), Slovenia, South Africa, South Korea, Spain, Sweden, Switzerland, Taiwan, Thailand, Turkey, United Kingdom, United States of America (USA), Vatican, Vietnam, Virgin Islands (US)
##### How to Activate PrestaShop
[###### Step 1: Get Started with Rapyd Payments](#idp421451_body)
[Sign up](https://support.rapyd.net)
**With a Rapyd Client Portal Account, you can:**
* Activate and set up your plugin.
* Access sandbox mode and test payments.
* View supported payment methods.
* View payment reports.
* Invite team members.
* Complete KYB steps to fully activate your account.
[###### Step 2: Activate the Module from the Rapyd Client Portal](#idp421470_body)
1. Sign in to Client Portal and navigate to **Plugins**: Click **PrestaShop**.

2. In the **PrestaShop** window, click the **Active** toggle button.
[###### Step 3: Add the Module from the PrestaShop Dashboard](#idp421484_body)
In the PrestaShop website, search for the Rapyd module in the modules marketplace, or click on this direct [link](https://addons.prestashop.com/en/payment-card-wallet/86167-rapyd-payments.html)
.

After purchasing the module, download it. C. In the PrestaShop dashboard, go to **Improve > Modules > Module Manager**, and upload the module.

[###### Step 4: Configure the Sandbox Mode](#idp421496_body)
### Note
The Client Portal must be in sandbox mode during this testing phase.
1. In the PrestaShop dashboard, go to **Improve > Modules > Module Manager**.

2. Scroll down to the Payments section and click on the **Configure** button of Rapyd Payments.

The **Payment methods** page appears. All Rapyd payment methods are automatically enabled.

3. Click on the **Yes** button of the **Enable test mode** setting.
4. Enter your Rapyd Access Key and Secret Key for the sandbox environment in the **Test Access key** and **Test Secret key** fields. Note that you should use the unique sandbox keys for the PrestaShop module. See also [Plugins and Add-Ons](plugins-and-add-ons.html "Plugins and Add-Ons")
.

5. Click the **Save** button.
[###### Step 5: Test the Module](#idp421533_body)
1. Go to your PrestaShop store site as a customer and add an item to the cart.
2. Click on the **Proceed to Checkout** button.

3. Enter the required data in the **Personal**, **Addresses**, and **Shipping Method** sections, and then click **Continue**.

4. In the Payment section, select the **Bank - Test Mode** method, and select the **Terms of Service** checkbox.

5. Click the **Place Order** button.
6. In the Rapyd Payment page, click the **Click to Pay** button.

7. In the Rapyd bank payment simulation page, click on the **Success** button, and then on the **Pay** button.

An order confirmation message appears.

8. Go to the **Sell > Orders** section of the PrestaShop dashboard and verify that the payment you have made is displayed with the correct status.

After you have finished testing the module, you can switch to production mode.
### Note
To fully activate your account for production mode you’ll need to complete the KYB form for compliance review in the Rapyd Client Portal.
[###### Step 6: Configure the Module for Production](#idp421589_body)
### Note
The Client Portal must be in production mode.
1. In the PrestaShop dashboard, go to **Improve > Modules > Module Manager**.
2. Scroll down to the Payments section and click on the **Configure** button of Rapyd Payments.
The Rapyd Payments Settings page appears with the sandbox settings:

3. Click on the **No** button of the **Enable test mode** setting to disable the test mode.
4. Enter your Rapyd Access Key and Secret Key for the production environment in the **Access key** and **Secret key** fields. Note that you should use the unique production keys for the PrestaShop module.

5. Click the **Save** button.
[###### Step 7: Set Up a Landing Page URL (Optional)](#idp421618_body)
After the checkout process completes, the customer can be forwarded to a landing page. This may be the main URL of the ecommerce site or any other landing page that you may want to define. To set the landing page URL:
1. Sign in to the Client Portal and navigate to **Settings > Branding**.

2. Click on the link icon and enter the URL of the landing page in the Fallback URL field.

3. Click **Save**.
### Note
For more information on customizing your checkout page, see [Hosted Checkout Page Integration](hosted-checkout-page-integration.html "Hosted Checkout Page Integration")
In this section:
Search results
--------------
No results found
* [Prev](rapyd-payments-app-for-ecwid.html#idp421414)
* [Next](rapyd-payments-plugin-for-prestashop.html#idp421446)
---
# Card Numbers for Testing
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [API Reference](api-reference.html)
* [Developer Resources](developer-resources.html)
* [Resources for Testing in the Sandbox](resources-for-testing-in-the-sandbox.html)
* [Testing for Payment API](testing-for-payment-api.html)
* Card Numbers for Testing
* [Prev](error-simulation.html)
* [Next](simulating-3ds-authentication---hosted-page.html)
###### Card Numbers for Testing
When you make test API calls for card payments, you can use test card numbers.
Numbers for Successful Transactions
You can use any card number that you find in the examples for the API methods, including the following card numbers:
* **4111111111111111**
* **4462030000000000**
You can use any card expiration date in the future, and any 3 digits for the CVV.
###### Numbers for Error Transactions
### Note
In the sandbox, these numbers are valid for all card payment methods in payments created by [Create Payment](create-payment.html "Create Payment")
and hosted checkout pages.
Use the following card numbers in the sandbox to simulate rejection of a card payment:
| Card Number | Type of Rejection |
| --- | --- |
| **4111111111111105** | Do Not Honor. |
| **4111111111111143** | Stolen Card, pick up. |
| **4111111111111151** | Insufficient Funds. |
**Do Not Honor error**
{
"status": {
"error\_code": "ERROR\_PROCESSING\_CARD - \[05\]",
"status": "ERROR",
"message": "Do Not Honor",
"response\_code": "ERROR\_PROCESSING\_CARD - \[05\]",
"operation\_id": "43c320f4-5f4a-4f89-a874-8da5df13ac82"
}
}
**Stolen Card error**
{
"status": {
"error\_code": "ERROR\_PROCESSING\_CARD - \[43\]",
"status": "ERROR",
"message": "Stolen Card, pick up",
"response\_code": "ERROR\_PROCESSING\_CARD - \[43\]",
"operation\_id": "6c0830fd-415d-4775-9410-afefd51773c3"
}
}
**Insufficient Funds error**
{
"status": {
"error\_code": "ERROR\_PROCESSING\_CARD - \[51\]",
"status": "ERROR",
"message": "Insufficient Funds",
"response\_code": "ERROR\_PROCESSING\_CARD - \[51\]",
"operation\_id": "563694e5-3454-474a-92b0-24ae720538b7"
}
}
You can use any card expiration date in the future, and any 3 digits for the CVV.
In this section:
Search results
--------------
No results found
* [Prev](error-simulation.html)
* [Next](simulating-3ds-authentication---hosted-page.html)
---
# Create Subscription Item
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [API Reference](api-reference.html)
* [Rapyd Collect](rapyd-collect-363484.html)
* [Subscription](subscription.html)
* [Subscription Item](subscription-item.html)
* Create Subscription Item
* [Prev](subscription-item.html)
* [Next](update-subscription-item.html)
###### Create Subscription Item
Create a subscription item and add it to an existing subscription for recurring payment.
To add a non-recurring charge to a subscription invoice, see [Create Invoice](create-invoice.html "Create Invoice")
.
This method triggers the **Customer Subscription Item Created** webhook. This webhook contains the same information as the response.
[###### Parameters](#idp307366_body)
[###### Request Header Parameters](#idp307368_body)
[###### Request Body Parameters](#idp307428_body)
[###### Response Parameters](#idp307478_body)
###### Code Samples
* * .NET
* using System;
using System.Text.Json;
namespace RapydApiRequestSample
{
class Program
{
static void Main(string\[\] args)
{
try
{
var requestObj = new
{
plan = "plan\_dad429f5e16c41499c9c23356a5e8dea",
subscription = "sub\_0de9c79c1e2beee09499dc8220493d59",
metadata = new
{
merchant\_defined = true
},
quantity = 1
};
string request = JsonSerializer.Serialize(requestObj);
string result = RapydApiRequestSample.Utilities.MakeRequest("POST", "/v1/subscription\_items", request);
Console.WriteLine(result);
}
catch (Exception e)
{
Console.WriteLine("Error completing request: " + e.Message);
}
}
}
}
* * JavaScript
* const makeRequest = require('/utilities').makeRequest;
async function main() {
try {
const body = {
plan: 'plan\_dad429f5e16c41499c9c23356a5e8dea',
subscription: 'sub\_0de9c79c1e2beee09499dc8220493d59',
metadata: {
merchant\_defined: true
},
quantity: 1
};
const result = await makeRequest('POST', '/v1/subscription\_items', body);
console.log(result);
} catch (error) {
console.error('Error completing request', error);
}
}
* * PHP
* /utilities.php";
include($path);
try {
$subscription\_items = \[\
"plan" => "plan\_dad429f5e16c41499c9c23356a5e8dea",\
"subscription" => "sub\_0de9c79c1e2beee09499dc8220493d59",\
"metadata" => array(\
"merchant\_defined" => true\
),\
"quantity" => 1\
\];
$object = make\_request('post', '/v1/subscription\_items', $subscription\_items);
var\_dump($object);
} catch(Exception $e) {
echo "Error: $e";
}
?>
* * Python
* from pprint import pprint
from utilities import make\_request
subscription\_item = {
"plan": "plan\_dad429f5e16c41499c9c23356a5e8dea",
"subscription": "sub\_0de9c79c1e2beee09499dc8220493d59",
"metadata": {
"merchant\_defined": True
},
"quantity": 1
}
result = make\_request(method='post', path='/v1/subscription\_items', body=subscription\_item)
pprint(result)
* /v1/subscription\_items
* Create Subscription Item
* curl -X post
https://sandboxapi.rapyd.net/v1/subscription\_items
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
-d '{
"plan": "plan\_dad429f5e16c41499c9c23356a5e8dea",
"subscription": "sub\_0de9c79c1e2beee09499dc8220493d59",
"metadata": {
"merchant\_defined": true
},
"quantity": 1
}
'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "710f52ac-5418-40ea-8e85-a2259bd288bb"
},
"data": {
"id": "subi\_e5dbbf84c68e5bb7db761625158d4262",
"created": 1560329454,
"metadata": null,
"quantity": 1,
"subscription\_id": "sub\_0de9c79c1e2beee09499dc8220493d59",
"plan": {
"id": "plan\_dad429f5e16c41499c9c23356a5e8dea",
"aggregate\_usage": "sum",
"amount": 0,
"billing\_scheme": "per\_unit",
"created\_at": 1559803170,
"currency": "USD",
"interval": "month",
"interval\_count": 1,
"metadata": {},
"product": "product\_97f34708270f13d95d9c505eb785e3c5",
"nickname": "",
"tiers": \[\],
"tiers\_mode": "",
"transform\_usage": {
"divide\_by": 0,
"round": ""
},
"trial\_period\_days": 0,
"usage\_type": "metered"
}
}
}
In this section:
The number of seconds elapsed since the beginning of the Unix epoch, which was 00:00:00 GMT on January 1, 1970. 10-digit integer.
Search results
--------------
No results found
* [Prev](subscription-item.html)
* [Next](update-subscription-item.html)
---
# Subscription Errors
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [API Reference](api-reference.html)
* [Rapyd Collect](rapyd-collect-363484.html)
* [Subscription](subscription.html)
* [Subscription](subscription-364807.html)
* Subscription Errors
* [Prev](delete-discount-from-subscription.html)
* [Next](subscription---hosted-page.html)
###### Subscription Errors
| Error Code | Description |
| --- | --- |
| ERROR\_CANCEL\_SUBSCRIPTION | The request tried to cancel a subscription, but the subscription was not found. The request was rejected. Corrective action: Determine whether the subscription was previously canceled, and check all input parameters. |
| ERROR\_CANCELED\_SUBSCRIPTION | The request tried to update a subscription, but the subscription was canceled. The request was rejected. Corrective action: None. Determine why an attempt was made to update a canceled subscription. |
| ERROR\_DAYS\_UNTIL\_DUE\_BILLING\_INCORRECT | The request tried to create or update a subscription, but the 'days\_until\_due' body parameter was set and 'billing' was not set to 'send\_invoice'. The request was rejected. Corrective action: Set 'billing' to 'send\_invoice'. |
| ERROR\_DEFINING\_SUBSCRIPTION\_TRIAL\_PERIOD | The request tried to define a trial period for a subscription, but the trial period was already defined in the plan. The request was rejected. Corrective action: Set 'trial\_from\_plan' to false and define either 'trial\_end' or 'trial\_period\_days'. |
| ERROR\_DELETE\_SUBSCRIPTION\_DISCOUNT | The request tried to delete a discount from a subscription, but the operation failed. Corrective action: Determine whether the discount was already deleted, and why there were multiple requests to delete it. |
| ERROR\_DELETE\_SUBSCRIPTION\_ITEM | The request tried to delete a subscription item from a subscription, but the operation failed. Corrective action: Determine whether the subscription item was already deleted, and why there were multiple requests to delete it. |
| ERROR\_GET\_PLANS | The request tried to create a subscription, but the plan was not found. The request was rejected. Corrective action: In each object in the ‘subscription\_items’ array, set 'plan' to the ID of a valid plan. |
| ERROR\_GET\_SUBSCRIPTION | The request attempted an operation that requires a subscription, but the subscription was not found. The request was rejected. Corrective action: Use the ID of an active subscription. |
| ERROR\_GET\_SUBSCRIPTION\_LIST | The request tried to retrieve a list of subscriptions, but there was an error in the query syntax. The request was rejected. Corrective action: Use the correct names of all query parameters. |
| ERROR\_HOSTED\_PAGE\_TRIAL\_FROM\_PLAN\_WAS\_DEFINED\_WITHOUT\_PLAN\_PERIOD\_DAYS | The request tried to define trial\_from\_plan for a subscription, but the trial period was not defined in the plan. The request was rejected. Corrective action: Either set 'trial\_from\_plan' to false or define 'trial\_period\_days' to a valid number in the plan creation. |
| ERROR\_INVALID\_TAX\_PERCENT\_INPUT | The request tried to create or update a subscription, but the 'days\_until\_due' body parameter was set and 'billing' was not set to 'send\_invoice'. The request was rejected. Corrective action: Set 'billing' to 'send\_invoice'. |
| ERROR\_PAYMENT\_METHOD\_DOES\_NOT\_SUPPORT\_SUBSCRIPTIONS | The request attempted an action that requires a payment method that supports subscriptions. The payment method selected does not support this action. The request was rejected. Corrective action: For 'payment\_method', use a payment method that supports subscriptions. |
| ERROR\_PAYMENT\_METHOD\_TYPE\_CURRENCY\_DOES\_NOT\_MATCH\_PLAN | The request tried to set a payment method for a subscription, but the payment method does not support the currency in the plan for a subscription item. The request was rejected. Corrective action: Choose a payment method that supports the currency of the subscription item. |
| ERROR\_PLAN\_INTERVAL\_DOES\_NOT\_MATCH | The request tried to add a subscription item based on a plan, but the billing interval for the plan did not match the interval of all the subscription items in the subscription. The request was rejected. Corrective action: Add only plans that have the same 'interval' and 'interval\_count' as the subscription items in the subscription. |
| ERROR\_SET\_TRIAL\_TO\_UNPAID\_SUBSCRIPTION | The request tried to add a free trial to an existing subscription, but full payment was not received for the previous billing period. The request was rejected. Corrective action: Add the free trial after the previous billing period is fully paid. |
| ERROR\_SUBSCRIPTION\_BILLING\_CYCLE\_ANCHOR\_IN\_FUTURE | The request tried to create a subscription, but the billing cycle anchor was set too far in the future. The request was rejected. Corrective action: To create a subscription, set the 'billing\_cycle\_anchor' body parameter to a Unix timestamp within the current billing cycle or the first cycle after the free trial period. |
| ERROR\_SUBSCRIPTION\_BILLING\_CYCLE\_ANCHOR\_INCORRECT | The request tried to create or update a subscription, but the billing cycle anchor was not recognized. The request was rejected. Corrective action: To create a subscription, set the 'billing\_cycle\_anchor' body parameter to a Unix timestamp. To update a subscription, set 'billing\_cycle\_anchor' to 'now' or 'unchanged'. |
| ERROR\_SUBSCRIPTION\_BILLING\_CYCLE\_ANCHOR\_NOT\_UPDATED | The request tried to update a free trial period for a subscription, but the billing cycle anchor was not updated correctly. The request was rejected. Corrective action: Leave 'billing\_cycle\_anchor' blank, which resets it to the end of the new trial period. |
| ERROR\_SUBSCRIPTION\_BILLING\_CYCLE\_ANCHOR\_NOT\_VALID | The request tried to create or update a subscription, but the date of the billing cycle anchor was set during the free trial period. The request was rejected. Corrective action: Set 'billing\_cycle\_anchor' with the same Unix timestamp as 'trial\_end', or any time later than that. |
| ERROR\_SUBSCRIPTION\_BILLING\_CYCLE\_ANCHOR\_WITHIN\_TRIAL | The request tried to create a subscription, but the date of the billing cycle anchor was set during the free trial period. The request was rejected. Corrective action: Set 'billing\_cycle\_anchor' with the same Unix timestamp as 'trial\_end', or any time later than that. |
| ERROR\_SUBSCRIPTION\_BILLING\_INCORRECT | The request attempted an operation that requires the 'billing' body parameter, but it was not set to a valid value. The request was rejected. Corrective action: Set 'billing' to 'pay\_automatically'. |
| ERROR\_SUBSCRIPTION\_COUPON\_CURRENCY | The request tried to add a coupon to a subscription, but the currency in the coupon did not match the currency of the plans in the subscription items. The request was rejected. Corrective action: Add a coupon that has the same currency as the plans in the subscription items. |
| ERROR\_SUBSCRIPTION\_DUPLICATE\_PLANS | The request attempted an operation on a subscription that would result in duplicate plans. The request was rejected. Corrective action: In the 'subscription\_items' array, ensure that each plan ID is used one time, and set 'quantity' as required. |
| ERROR\_SUBSCRIPTION\_NOT\_FOUND | The request attempted an operation that requires a subscription ID, but the value was missing or was not recognized. The request was rejected. Corrective action: Provide a valid subscription ID. |
| ERROR\_SUBSCRIPTION\_TRIAL\_END\_AND\_TRIAL\_PERIOD\_SET | The request tried to create or update a subscription, but both 'trial\_end' and 'trial\_period\_days' were set. The request was rejected. Corrective action: Set 'trial\_end' or 'trial\_period\_days', but not both. |
| ERROR\_SUBSCRIPTION\_TRIAL\_END\_NOT\_VALID | The request tried to create or update a subscription, but the value of the 'trial\_end' body parameter was not recognized. The request was rejected. Corrective action: Use a valid Unix timestamp for the 'trial\_end' parameter. The maximum trial period length is 2 years. If there is no free trial, do not set this parameter. |
| ERROR\_SUBSCRIPTION\_TRIAL\_PERIOD\_ALREADY\_DEFINED | The request tried to define a trial period for a subscription, but the trial period was already defined in the plan. The request was rejected. Corrective action: Set 'trial\_from\_plan' to false and define either 'trial\_end' or 'trial\_period\_days'. |
| ERROR\_SUBSCRIPTION\_TRIAL\_PERIOD\_DAYS\_NOT\_VALID | The request tried to create or update a subscription, but the value of the 'trial\_period\_days' body parameter was not recognized. The request was rejected. Corrective action: Set 'trial\_period\_days' to an integer between 1 and 710. If there is no free trial, do not set this parameter. |
| ERROR\_SUBSCRIPTION\_TRIAL\_PERIOD\_NOT\_VALID | The request tried to update the trial period of a subscription, but the end of the new trial period is before the current date. The request was rejected. Corrective action: Set 'trial\_period\_days' such that the last day of the trial period is after the current day. |
| ERROR\_TAX\_PERCENTAGE\_NOT\_VALID | The request attempted an operation that requires a tax percentage, but the value was not valid. The request was rejected. Corrective action: Set 'tax\_percent' to zero or a positive decimal number. |
| ERROR\_TRIAL\_END\_TRIAL\_FROM\_PLAN\_TOGETHER | The request tried to create or update a subscription, but the 'trial\_end' and 'trial\_from\_plan' body parameters were both set. The request was rejected. Corrective action: To set a trial period, set 'trial\_end' or 'trial\_from\_plan', but not both. |
| ERROR\_TRIAL\_PERIOD\_DAYS\_MISMATCH | The request tried to add or update the list of subscription items in a subscription, but the plans in the subscription items did not all have the same value for 'trial\_period\_days'. The request was rejected. Corrective action: Update the plans so that they all have the same value for 'trial\_period\_days', or set 'trial\_from\_plan' in the subscription to 'false'. |
| ERROR\_UPDATE\_SUBSCRIPTION\_CUSTOMER\_MISMATCH | The request tried to update a subscription with a new payment method, but the payment method does not belong to the customer. The request was rejected. Corrective action: For 'payment\_method', use the ID of a payment method belonging to the customer specified for the subscription. |
| ERROR\_UPDATE\_SUBSCRIPTION\_PAYMENT\_PENDING | The request tried to add a new payment method to a subscription, but the last payment on the subscription is still pending. The request was rejected. Corrective action: Complete or cancel the earlier payment, then resubmit the request. |
| ERROR\_UPDATE\_SUBSCRIPTION\_STATUS\_NOT\_UPDATABLE | The request tried to update a free trial period for a subscription, but the subscription status was not 'active' or 'trialing'. The request was rejected. Corrective action: Create a new subscription with a new trial period. |
| INVALID\_BILLING | The request tried to create a subscription or invoice, but the value of the 'billing' body parameter was not recognized. The request was rejected. Corrective action: Set 'billing' to 'pay\_automatically'. |
| INVALID\_STATUS | The request tried to retrieve a list of subscriptions, but the 'status' query parameter was not recognized. The request was rejected. Corrective action: Set 'status' to one of the following values: 'trialing', 'active', 'past\_due', 'unpaid', 'canceled', 'all' |
| INVALID\_SUBSCRIPTION\_ID | The request tried to process a subscription or subscription item, but the subscription was not found. The request was rejected. Corrective action: Use the ID of a valid subscription. |
| INVALID\_SUBSCRIPTION\_ITEM\_QUANTITY | The request tried to create a subscription or a usage record, but the quantity for a subscription item was not valid or 'usage\_type' in the relevant plan was set to 'metered'. The request was rejected. Corrective action: Use a positive integer for 'quantity' or create a new subscription item with a plan that has 'usage\_type' set to 'metered'. |
| INVALID\_SUBSCRIPTION\_ITEMS | The request tried to create or update a subscription, but the subscription items could not be identified. The request was rejected. Corrective action: Set the 'subscription\_items' body parameter to be an object or an array of not more than 20 objects. |
In this section:
Search results
--------------
No results found
* [Prev](delete-discount-from-subscription.html)
* [Next](subscription---hosted-page.html)
---
# Rapyd Payments Plugin for OpenCart
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Plugins](plugins.html)
* [Plugins and Add-Ons](plugins-and-add-ons.html)
* Rapyd Payments Plugin for OpenCart
* [Prev](rapyd-payments-plugin-for-prestashop.html#idp421618)
* [Next](rapyd-payments-plugin-for-opencart.html#idp421649)
#### Rapyd Payments Plugin for OpenCart
Accept cross-border payments from your OpenCart store.
Offering more payment methods drives increased conversions and customer loyalty. Rapyd offers this plugin for over 50 countries.
Download it now from the [OpenCart Extensions Marketplace](https://www.opencart.com/index.php?route=marketplace/extension&filter_search=rapyd)
or from your OpenCart control panel. For detailed information, read the full instructions on this page.
### Rapyd Account Connection Limit
You can only connect one store per Rapyd Account.
You must be domiciled in one of the following countries in order to accept payments.
[##### Supported Countries](#idp421649_body)
Andorra, Australia, Austria, Belgium, Bosnia and Herzegovina, Brazil, Bulgaria, Canada, Chile, Colombia, Croatia, Cyprus, Czech Republic, Denmark, Dominican Republic, El Salvador, Estonia, Finland, France, Georgia, Germany, Gibraltar, Greece, Greenland, Hong Kong, Hungary, Iceland, India, Indonesia, Ireland, Israel, Italy, Japan, Latvia, Liechtenstein, Lithuania, Luxembourg, Macedonia, Malaysia, Malta, Mexico, Moldova, Monaco, Montenegro, Netherlands, New Zealand, Norway, Peru, Philippines, Poland, Portugal, Romania, San Marino, Singapore, Slovak Republic (Slovakia), Slovenia, South Africa, South Korea, Spain, Sweden, Switzerland, Taiwan, Thailand, Turkey, United Kingdom, United States of America (USA), Vatican, Vietnam, Virgin Islands (US)
##### How to Activate OpenCart
[###### Step 1: Get Started with Rapyd Payments](#idp421654_body)
[Sign up](https://support.rapyd.net)
* Activate and set up your plugin.
* Access sandbox mode and test payments.
* View supported payment methods.
* View payment reports.
* Invite team members.
* Complete KYB steps to fully activate your account.
[###### Step 2: Activate the Module from the Rapyd Client Portal](#idp421671_body)
1. Sign in to Client Portal and navigate to **Plugins**. Select **OpenCart**.
2. In the **OpenCart** window, click the **Active** toggle button.

[###### Step 3: Add the App from the OpenCart Marketplace](#idp421685_body)
1. Navigate to the OpenCart marketplace by clicking on this direct [link](https://www.opencart.com/index.php?route=marketplace/extension)
.
2. Enter ‘Rapyd’ in the **Search** field.

The **Rapyd Payments** plugin appears in the results.

3. Click on the **Rapyd** plugin, and then click on the **Download** button.

[###### Step 4: Configure the Sandbox Mode](#idp421709_body)
### Note
The Client Portal must be in sandbox mode during this testing phase. See [Developers](developers.html "Developers")
.
There are four Rapyd payment types: Rapyd Bank, Rapyd Card, Rapyd Cash, and Rapyd eWallet. You should do the following procedure for each payment type that you want to add to your OpenCart site.
1. In the OpenCart control panel, go to **Extensions > Extensions**, and select ‘Payments’ as the extension type.

2. Scroll down to the Rapyd Payments extensions.

Click on the **+** icon next to the type of Rapyd payment you want to enable. The **Rapyd Payments General** tab appears:

3. Select **Yes** in the **Enable test** mode field.
4. Enter your Rapyd **Access Key** and **Secret Key** for the sandbox environment in the **Test Access key** and **Test Secret key** fields. Note that you should use the unique sandbox keys for the OpenCart plugin. See also [Plugins and Add-Ons](plugins-and-add-ons.html "Plugins and Add-Ons")
.
5. In the **Status** field, select **Enabled**.
6. In the **Sort Order** field enter an integer between 1 and 4 where 1 is the payment type that appears on the top of the list on your site’s checkout screen.
7. Optionally, set up the order status for the payment type that you are using via the **Order Status** tab.

[###### Step 5: Test the Plugin](#idp421757_body)
1. Go to your OpenCart ecommerce site as a customer and add an item to the cart.

2. Click on the **Checkout** button.

3. Select **Guest Checkout** and click the **Continue** button.

4. Enter the billing and delivery details, and click the **Continue** button.

5. Select a delivery method, and then select **Card** as the **Rapyd Payments** method. Agree to the terms and conditions, and click the **Continue** button.

6. For testing purposes, enter the following values for a Mastercard card payment:
* Card: Mastercard
* Card number: 4111 1111 1111 1111
* Expiration Date: 12/23
* CVV Code: 123
* Cardholder Name: John Doe

7. Click on the **Click to Pay** button. A confirmation message appears.

8. Go to the **Sales > Orders** section of the OpenCart Admin panel, and verify that the payment you have made is displayed with the correct status.

After you have finished testing the module, you can switch to production mode.
[###### Step 6: Configure the Module for Production](#idp421821_body)
### Note
The Client Portal must be in production mode.
There are four Rapyd payment types: Rapyd Bank, Rapyd Card, Rapyd Cash, and Rapyd eWallet. You should do the following procedure for each payment type that you want to set for production.
1. In the OpenCart control panel, go to **Extensions > Extensions**, and select ‘Payments’ as the extension type.

2. Scroll down to the Rapyd Payments extensions.

### Note
Click on the **+** icon next to the type of Rapyd payment you want to enable. The **Rapyd Payments General** tab appears:

3. Select **No** in the **Enable test mode** field.
4. Enter your Rapyd **Access Key** and **Secret Key** for the production environment in the **Access key** and **Secret key** fields. Note that you should use the unique production keys for the OpenCart plugin. See also [Plugins and Add-Ons](plugins-and-add-ons.html "Plugins and Add-Ons")
.
5. In the **Status** field, select **Enabled**.
6. In the **Sort Order** field enter an integer between 1 and 4 where 1 is the payment type that appears on the top of the list on your site’s checkout screen.
7. Optionally, set up the order status for the payment type that you are using via the **Order Status** tab.

[###### Step 7: Set a Landing Page URL (Optional)](#idp421869_body)
After the checkout process completes, the customer can be forwarded to a landing page. This may be the main URL of the ecommerce site or any other landing page that you may want to define. To set the landing page URL:
1. Sign in to the Client Portal and navigate to **Settings > Branding**.

2. Click on the link icon and enter the URL of the landing page in the Fallback URL field.

3. Click **Save**.
For more information on customizing your checkout page, see [Hosted Checkout Page Integration Steps](hosted-checkout-page-integration.html "Hosted Checkout Page Integration")
.
In this section:
Search results
--------------
No results found
* [Prev](rapyd-payments-plugin-for-prestashop.html#idp421618)
* [Next](rapyd-payments-plugin-for-opencart.html#idp421649)
---
# Hosted Subscription Checkout Page
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Product Guide](product-guide.html)
* [Rapyd Collect](rapyd-collect.html)
* [Billing](billing.html)
* Hosted Subscription Checkout Page
* [Prev](subscriptions.html#idp222385)
* [Next](hosted-subscription-checkout-page.html#idp222953)
##### Hosted Subscription Checkout Page
A secured page to accept your subscriptions payments.
Subscriptions are recurring transactions based on predefined billing cycles. Subscriptions work well for businesses that offer a service that can be renewed on a regular basis.
The Hosted Subscriptions Checkout Page enables you to collect recurring payments for products through the Fixed Price Plan. This hosted solution can allow you to effectively manage subscriptions for your organization, and more easily collect payments from customers by directing them to the Hosted Subscriptions Checkout Page.
Common use cases may include:
* Accepting recurring payments from your customers without having to handle their credit card information.
* Offering a subscriptions solution to other businesses or merchants without a [PCI-DSS](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_dss "Payment Card Industry Data Security Standard")
certification.
* A no-code solution to generate a subscriptions page via the Client Portal.
[###### Hosted Subscriptions Page Example](#idp222953_body)
1. Enter your payment information.
2. Enter your address and billing address.
3. Click **Subscribe**.

4. Complete 3DS Verification.

5. Redirect to the **subscription success** page.
6. Click **Finish**.
### Supported Payment Methods
The following payment methods are supported for the Hosted Subscription Checkout Page:
* Cards
* Bank Redirect
[###### Create A Subscription Page Workflow](#idp222985_body)
###### Step 1: Create a Product for Your Subscription

1. Decide the product to use for your subscription.
2. Use [Create Product](create-product.html "Create Product")
to generate the product that will be used in the description. See [Subscriptions - Create a Product](subscriptions.html "Subscriptions")
for more detail about parameters.
**Note**: A product used in pricing plans must have their `type` set to **service**.
3. Rapyd generates a product ID.
4. Rapyd sends a webhook response.
###### Step 2: Create a Plan for Your Subscription

1. You decide the pricing settings for your pricing plan.
2. Use [Create Plan](create-plan.html "Create Plan")
to generate your plan. See [Subscriptions - Create a Plan](subscriptions.html "Subscriptions")
for more details about parameters.
3. Rapyd generates a plan ID.
4. Rapyd sends a webhook reponse.
**Note**: The Hosted Subscription page can only be generated with the Fixed Price Plan.
###### Step 3: Create a Customer for Your Subscription.

1. Use [Create Customer](create-customer.html "Create Customer")
to generate a customer through the API for your subscription.
2. You ask Rapyd to generate a customer ID. See [Subscriptions - Create a Customer Profile](subscriptions.html "Subscriptions")
for more details about parameters.
3. Rapyd generates a unique customer ID.
**Note**: See Create Subscription by Hosted Page for more information on how to generate a Hosted Subscription Checkout page without Customer ID.
###### Step 4: Generate a Hosted Checkout Page for Subscriptions

1. You request Rapyd to generate a Hosted Subscription Checkout Page.
2. Rapyd processes your request and sends the response with the redirect URL.
3. You display the redirect URL to the customer.
4. The customer completes the payment on the hosted page.
[###### Hosted Subscriptions Page Message Sequences](#idp223055_body)
The message sequence diagrams below describe how information is exchanged between Rapyd, the merchant, the merchant's customers, and the card network.
Create Hosted Subscription Page

[###### How the Hosted Subscriptions Page Works](#idp223062_body)
Subscription payment information is collected by Rapyd through a generated hosted page. If a customer does not have a card on file, you can direct them to the Hosted Subscriptions Checkout page to collect their payment information for the subscription. In addition, you can generate multiple hosted pages and send them to different customers.
You can customize the look and feel of your page to match your brand and website experience as described in [Customizing Your Hosted Page](customizing-your-hosted-page.html "Customizing Your Hosted Page")
You need to complete the following steps in order to generate a Hosted Subscriptions Checkout Page:
1. [Create a Product](subscriptions.html "Subscriptions")
(API integration)
2. [Create a Plan](subscriptions.html "Subscriptions")
(Create a pricing plan for the product through API integration)
3. [Create a Customer](subscriptions.html "Subscriptions")
(API Integration or via the Client Portal)
4. Generate a Hosted Checkout Page for Subscriptions (API Integration or via the Client Portal)
[###### Hosted Subscriptions Page Request Parameters](#idp223080_body)
The Create Subscription by Hosted Page describes the parameters in the request in greater detail.
| | | | |
| --- | --- | --- | --- |
| Body Parameter | Required | Description | Relates To |
| subscription\_items | yes | Array of subscription items. Each item contains a plan (required) and a quantity (optional).
* Default Quantity is 1
* Quantity is relevant for licensed usage\_type | Subscription Object |
| customer | yes | ID of the customer who pays for this subscription. String starting with **cus\_** | |
| billing | yes | Determines the method of billing. Set to **pay\_automatically** | |
[###### Generate Hosted Subscription Page Request](#idp223131_body)
* * Request
* // Request URL: GET https://sandboxapi.rapyd.net/v1/checkout/subscription
// Message body:
{
"subscription\_items": \[\
\
{\
"plan": "plan\_9d7bc847f1ad3fe36f389273f5e22b56",\
"quantity": 1\
}\
\
\],
"country": "US",
"language": "EN",
"customer": "cus\_49ea9673acfbe53fac114fbf4bd94be3",
"coupon": "coupon\_da009d56dd6b7fdf4de28af673430a63",
"billing": "pay\_automatically",
"tax\_percent": 3,
"trial\_period\_days": 7,
"metadata": \[{\
\
"my\_meta\_data\_key": "metadata\_value"\
\
}\]
}
### Main Button Text
The `merchant_main_button` parameter in the request allows you to define the text for the main button for the Hosted Subscription page. This is for subscriptions that do not have trials.
The options for the button text are:
* Subscribe
* Purchase
* Pay
When a subscription with a trial is used for the Hosted Subscription page, the default option of **Start trial** is used.
[###### Generate Hosted Subscriptions Page Response](#idp223155_body)
Create Subscription by Hosted Page describes the fields in the response.
* * Response
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "9e7ede34-9c44-494f-b833-c1734afee646"
},
"data": {
"id": "hp\_sub\_f477f7b37e66ffef1b4be5becfccea46",
"status": "NEW",
"cancel\_url": "https://www.rapyd.net",
"complete\_url": "https://www.rapyd.net",
"language": "en",
"merchant\_color": "",
"merchant\_logo": "",
"merchant\_website": "https://www.rapyd.net",
"merchant\_customer\_support": {},
"merchant\_alias": "rap",
"merchant\_terms": "",
"merchant\_privacy\_policy": "",
"page\_expiration": 1701594560,
"redirect\_url": "https://sandboxcheckout.rapyd.net/subscription?token=hp\_sub\_f477f7b37e66ffef1b4be5becfccea46",
"merchant\_main\_button": "start\_trial",
"subscription\_items": \[\
\
{\
\
"id": "",\
"plan": {\
\
"id": "09de6170-d76b-4450-8dcb-7833f5706384",\
"tiers": \[\],\
"token": "plan\_9d7bc847f1ad3fe36f389273f5e22b56",\
"amount": 100,\
"product": null,\
"interval": "day",\
\
"metadata": {\
\
"merchant\_defined": true\
\
},\
\
"nickname": "hcp",\
"created\_at": 1700384490,\
"deleted\_at": 0,\
"tiers\_mode": "",\
"usage\_type": "licensed",\
"product\_name": "HCP",\
"product\_type": "service",\
"currency\_code": "USD",\
"product\_token": "product\_eb45c8152bede037911d5e99ee4bc116",\
"billing\_scheme": "per\_unit",\
"interval\_count": 20,\
"aggregate\_usage": "sum",\
"organization\_id": "",\
"transform\_usage": {},\
"product\_is\_active": 1,\
"trial\_period\_days": 0,\
"transform\_usage\_round": "up",\
"transform\_usage\_divide\_by": 1\
\
},\
\
"token": "",\
"created": 0,\
"deleted": false,\
"prorate": true,\
"quantity": 1,\
"plan\_token": "plan\_9d7bc847f1ad3fe36f389273f5e22b56",\
"clear\_usage": false,\
"proration\_date": 0\
\
}\
\
\],
"customer": "cus\_49ea9673acfbe53fac114fbf4bd94be3",
"customer\_payment\_methods": \[\],
"bank\_redirect\_customer\_payment\_methods": \[\],
"country": "US",
"trial\_from\_plan": false,
"trial\_period\_days": 7,
"tax\_percent": 3,
"billing\_cycle\_anchor": 0,
"billing": "pay\_automatically",
"cancel\_checkout\_url": "https://www.rapyd.net",
"complete\_checkout\_url": "https://www.rapyd.net",
"payment": {
"amount": null,
"original\_amount": 0,
"is\_partial": false,
"currency\_code": "",
"country\_code": "",
"status": "",
"description": "",
"merchant\_reference\_id": "",
"customer\_token": "",
"payment\_method": "",
"payment\_method\_data": {},
"expiration": 0,
"captured": false,
"refunded": false,
"refunded\_amount": 0,
"receipt\_email": "",
"complete\_payment\_url": "",
"error\_payment\_url": "",
"receipt\_number": "",
"flow\_type": "",
"address": null,
"statement\_descriptor": "",
"transaction\_id": "",
"metadata": null,
"failure\_code": "",
"failure\_message": "",
"paid": false,
"paid\_at": 0,
"dispute": null,
"refunds": null,
"order": null,
"outcome": null,
"visual\_codes": {},
"textual\_codes": {},
"instructions": {},
"ewallet\_id": null,
"ewallets": \[\],
"payment\_method\_options": {},
"payment\_method\_type": "",
"payment\_method\_type\_category": "",
"fx\_rate": "",
"merchant\_requested\_currency": null,
"merchant\_requested\_amount": null,
"fixed\_side": "",
"payment\_fees": null,
"invoice": "",
"escrow": null,
"group\_payment": "",
"cancel\_reason": null,
"initiation\_type": "",
"mid": "",
"next\_action": "not\_applicable"
},
"metadata": \[\
\
{\
\
"my\_meta\_data\_key": "metadata\_value"\
\
}\
\
\],
"custom\_elements": {
"save\_card\_default": false,
"display\_description": false,
"payment\_fees\_display": true,
"merchant\_currency\_only": false,
"billing\_address\_collect": false,
"dynamic\_currency\_conversion": false
},
"payment\_method\_type": "",
"coupon": "coupon\_da009d56dd6b7fdf4de28af673430a63",
}
}
The data for this section shows:
* The id of the subscription is **sub\_f477f7b37e66ffef1b4be5becfccea46**.
* The customer’s payment method will be charged every 20 days for the units they use for the subscription service.
* The coupon ID is **coupon\_da009d56dd6b7fdf4de28af673430a63**.
### Hosted Subscription Page Coupon Support
Coupons are supported for Hosted Subscription pages. Pass the ‘coupon’ parameter in the request of Create Subscription by Hosted Page with the coupon ID, starting with **coupon\_**.
You can also add a coupon by passing the ‘coupon’ parameter in the request of Create Customer. You then pass the Customer ID when creating the Hosted Subscription Page.
In this section:
Regulations developed for the [payment card industry](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_pci)
for data security and protection against fraud.
Search results
--------------
No results found
* [Prev](subscriptions.html#idp222385)
* [Next](hosted-subscription-checkout-page.html#idp222953)
---
# Listing Payments
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Client Portal Guide](client-portal-guide.html)
* [Collect](collect.html)
* [Payments](payments.html)
* Listing Payments
* [Prev](two-step-payment-367016.html#idp253196)
* [Next](listing-payments.html#idp253236)
##### Listing Payments
You can view a list of all payment transactions.
[###### How to View Your Payments](#idp253236_body)
1. Sign in as described in [Accessing the Client Portal](accessing-the-client-portal.html "Accessing the Client Portal")
and navigate to **Collect** > **Payments**.
The **Payments** page appears.

2. Modify the display by doing the following:
* To add or remove columns, click the **Choose Columns** icon at the top right. The icon has three vertical bars. On the **Choose Columns** panel, select the columns you want to appear on screen and click **Apply** .
* To change the column order, grab a column header and drag it to a new position.
* To sort the list, hover over a column header. If the cursor turns into a pointing finger, click the header. An arrow indicates the sort direction. To change the direction, click the header again.
3. Other things you can do:
* To filter the list, click the **Search** field at the top. Suggested filters appear. Select a filter and type a value, or type a free text string. Then click the magnifying glass icon.
* To clear a filter, delete the text in the **Search** field and click the magnifying glass icon.
* To apply an advanced filter, click the Filter icon at the top right. In the **Filter** window, select a field and a condition, and enter a value. To define an additional filter, click **\+ Add Filter** and fill in the field, condition, and value. Then click **Apply**.
* To clear an advanced filter, close the filter description.
* To clear all advanced filters, click **Clear All**.
* To view additional columns, move the horizontal scroll bar at the bottom of the page.
* To scroll through the lines of the table, move the vertical scroll bar at the right side of the page.
[###### Description of Fields](#idp253284_body)
The following table describes the fields in the **Payments** page.
| Field | Description |
| --- | --- |
| Category | Category of payment method type used for the transaction:
* **bank\_redirect**
* **bank\_transfer**
* **cash**
* **card**
* **ewallet** |
| Country | The country of the transaction. |
| Created At | Date and time of creation of the payment. |
| Currency | Three-letter ISO 4217 code for the currency used in the **Amount** field. |
| Customer ID | ID of the customer who paid the money. String starting with **customer\_**. |
| Expiration Date | End of the time allowed for customer to complete this payment.
Relevant to cash, bank redirect and bank transfer. |
| Merchant Reference ID | Identifier for the transaction. Defined by the merchant. |
| 3DS authenticated | The 3DS authentication status for the payment. For card payments only. |
| Failure code | The provided reason why the payment failed. For card payments only. |
| Metadata | A JSON object defined by the Rapyd partner. |
| Paid Amount | The amount received by the recipient after the payment is completed, in units of the currency defined in **Currency**. |
| Paid At | Date and time that the payment was completed. |
| Payment ID | The payment ID, a string starting with **payment\_**. |
| Payment Method | The name of the specific payment method type. For example: **us\_debit\_mastercard\_card**. |
| Refunded | Indicates whether there was a refund against this payment. **True** or **False**. |
| Refunded Amount | The total amount refunded against this payment, in units of the currency defined in **Currency** . |
| Requested Amount | The requested amount, in units defined by **Currency**. Corresponds to the **original\_amount** field in the Payments API. |
| Statement Descriptor | A text description suitable for the customer's statement. |
| Status | Indicates the status of the payment. One of the following:
* **Active** - Active and awaiting completion.
* **Canceled** - The payment was canceled.
* **Closed** - The transaction is complete.
* **Error** - Error. An attempt was made to complete the payment, but it failed.
* **EXP** - The payment has expired. |
| Network fraud indicator | Indicates if the payment has been reported as fraudulent by the Visa TC40 and Mastercard SafeFiles reports.
Possible values:
* Yes
* No |
| Fraud Type | A text string that describes the type of fraud for the payment. |
In this section:
Search results
--------------
No results found
* [Prev](two-step-payment-367016.html#idp253196)
* [Next](listing-payments.html#idp253236)
---
# Update Subscription Item
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [API Reference](api-reference.html)
* [Rapyd Collect](rapyd-collect-363484.html)
* [Subscription](subscription.html)
* [Subscription Item](subscription-item.html)
* Update Subscription Item
* [Prev](create-subscription-item.html)
* [Next](list-subscription-items.html)
###### Update Subscription Item
Change or modify a subscription item.
This method triggers the **Customer Subscription Item Updated** webhook. This webhook contains the same information as the response.
[###### Parameters](#idp307579_body)
[###### Request Path Parameters](#idp307581_body)
* * subscription\_item
* ID of the subscription item. String starting with **subi\_**.
[###### Request Header Parameters](#idp307591_body)
[###### Request Body Parameters](#idp307651_body)
[###### Response Parameters](#idp307688_body)
###### Code Samples
* * .NET
* using System;
using System.Text.Json;
namespace RapydApiRequestSample
{
class Program
{
static void Main(string\[\] args)
{
try
{
string subscriptionItem = "subi\_e5dbbf84c68e5bb7db761625158d4262";
var requestObj = new
{
quantity = 2,
metadata = new
{
merchant\_defined = true
}
};
string request = JsonSerializer.Serialize(requestObj);
string result = RapydApiRequestSample.Utilities.MakeRequest("POST", $"/v1/subscription\_items/{subscriptionItem}", request);
Console.WriteLine(result);
}
catch (Exception e)
{
Console.WriteLine("Error completing request: " + e.Message);
}
}
}
}
* * JavaScript
* const makeRequest = require('/utilities').makeRequest;
async function main() {
try {
const body = {
quantity: 2
};
const result = await makeRequest(
'POST',
'/v1/subscription\_items/subi\_e5dbbf84c68e5bb7db761625158d4262',
body
);
console.log(result);
} catch (error) {
console.error('Error completing request', error);
}
}
* * PHP
* /utilities.php";
include($path);
try {
$body = \[\
"metadata" => array(\
"merchant\_defined" => "updated"\
),\
"quantity" => 2\
\];
$object = make\_request('post', '/v1/subscription\_items/subi\_e5dbbf84c68e5bb7db761625158d4262', $body);
var\_dump($object);
} catch(Exception $e) {
echo "Error: $e";
}
?>
* * Python
* from pprint import pprint
from utilities import make\_request
subscription\_item = {
"metadata": {
"merchant\_defined": 'updated'
},
"quantity": 2
}
result = make\_request(method='post', path='/v1/subscription\_items/subi\_e5dbbf84c68e5bb7db761625158d4262',
body=subscription\_item)
pprint(result)
* /v1/subscription\_items/:subscription\_item
* Update Subscription Item
* curl -X post
https://sandboxapi.rapyd.net/v1/subscription\_items/subi\_e5dbbf84c68e5bb7db761625158d4262
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
-d '{
"metadata": {
"merchant\_defined": "updated"
},
"quantity": 2
}
'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "65056f31-505e-4a75-802a-aea3cdf8226d"
},
"data": {
"id": "subi\_e5dbbf84c68e5bb7db761625158d4262",
"created": 1560329454,
"metadata": {
"merchant\_defined": "updated"
},
"quantity": 2,
"subscription\_id": "sub\_0de9c79c1e2beee09499dc8220493d59",
"plan": {
"id": "plan\_dad429f5e16c41499c9c23356a5e8dea",
"aggregate\_usage": "sum",
"amount": 0,
"billing\_scheme": "per\_unit",
"created\_at": 1559803170,
"currency": "USD",
"interval": "month",
"interval\_count": 1,
"metadata": {},
"product": "product\_97f34708270f13d95d9c505eb785e3c5",
"nickname": "",
"tiers": \[\],
"tiers\_mode": "",
"transform\_usage": {
"divide\_by": 0,
"round": ""
},
"trial\_period\_days": 0,
"usage\_type": "metered"
}
}
}
In this section:
The number of seconds elapsed since the beginning of the Unix epoch, which was 00:00:00 GMT on January 1, 1970. 10-digit integer.
Search results
--------------
No results found
* [Prev](create-subscription-item.html)
* [Next](list-subscription-items.html)
---
# Authorizing a Card Transaction Remotely
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Product Guide](product-guide.html)
* [Rapyd Issuing](rapyd-issuing.html)
* [Authorization](authorization.html)
* Authorizing a Card Transaction Remotely
* [Prev](setting-up-a-remote-authorization-server.html#idp246098)
* [Next](authorizing-a-card-transaction-remotely.html#idp246187)
##### Authorizing a Card Transaction Remotely
Process requests and authorize card transactions. | `Enterprise`
Rapyd's clients can process card transaction authorizations on a remote server. This use case follows the course of a successful card transaction.
For example, the customer has a card that was issued via the Rapyd issuing platform. The card is funded by the client's wallet. The customer uses the card at a bricks-and-mortar retail location to buy a luxury watch for 1,200.00 USD (U.S. Dollars).
The card processor notifies Rapyd of the transaction. Rapyd sends an authorization request to the client's remote authorization server.
The client notifies Rapyd that the transaction is authorized. Rapyd notifies the card processor that the transaction was approved.
Rapyd notifies the card network that the transaction is authorized. When Rapyd receives notification that the transaction is completed successfully, Rapyd notifies the client.
[###### Remote Authorization Workflow](#idp246187_body)
Let’s look at the highlights of your workflow.
###### Step 1: Receiving the Transaction

1. The card network notifies Rapyd of the transaction.
2. Rapyd sends a request for transaction authorization.
3. Your authorization server authorizes the transaction and sends a webhook to Rapyd with the status of the authorization.
###### Step 2: Processing the Transaction

1. Rapyd notifies the card network that the transaction is authorized.
2. The card network notifies Rapyd that the transaction is complete.
3. Rapyd charges the client wallet and notifies the client that the transaction is complete.
[###### How Authorizing a Card Transaction Remotely Works](#idp246214_body)
### Prerequisites
You must set up your own authorization server, as detailed in [Setting Up a Remote Authorization Server](setting-up-a-remote-authorization-server.html "Setting Up a Remote Authorization Server")
.
[###### Remote Authorization Request](#idp246220_body)
Rapyd sends you an authorization request for the customer's purchase.
* * Remote Authorization Request
* {
"amount": 1200,
"authorization\_id": "cardauth\_874618744ffs3r452",
"card\_id": "card\_874618744ffs3r452",
"contact\_id": "cont\_874618744ffs3r452",
"created\_at": 1352316334,
"currency": "USD",
"pos\_info": {
"card\_holder\_presence": true,
"identification\_code": "GYUI",
"mcc": "5812",
"name\_and\_location": "RITE AID 2244 CORNER ST. MEXICO CITY",
"terminal\_id": "7865"
},
"status": "PENDING",
"type": "authorization"
}
You process the request and authorize the transaction.
### Supported Currencies for Authorized Transactions
Some currencies are not supported for issued card transactions. If a card transaction uses an unsupported currency, then the authorization for that card transaction will be blocked.
The merchant will be notified via webhook. The error code is the `decline_code` field with a value of **57**. See [Authorization Declined Webhook](authorization-declined-webhook.html "Authorization Declined Webhook")
for more information.
[###### Remote Authorization Response](#idp246239_body)
You return a response to Rapyd in the required JSON format, indicating that the transaction is approved.
* * Remote Authorization Response
* {
"authorization\_id": "cardauth\_874618744ffs3r452",
"response\_code": "00",
"auth\_code": "1A2B3C"
}
Rapyd transfers 1,200.00 USD (U.S. Dollars) from the client's wallet to the card network. The client transfers the same amount from the customer's personal wallet to the client's wallet.
In this section:
Search results
--------------
No results found
* [Prev](setting-up-a-remote-authorization-server.html#idp246098)
* [Next](authorizing-a-card-transaction-remotely.html#idp246187)
---
# Changing the Card Token Status
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Client Portal Guide](client-portal-guide.html)
* [Issuing](issuing.html)
* Changing the Card Token Status
* [Prev](viewing-a-list-of-card-tokens.html#idp261496)
* [Next](changing-the-card-token-status.html#idp261607)
#### Changing the Card Token Status
You can view a list of all card tokens associated with your provisioned card. **Provisioning** refers to the process where an issued card is added to a digital wallet and tokenized. An issued card can have multiple tokens associated with the card.
Token statuses can be managed through Client Portal. You can **activate**, **suspend**, or **deactivate** a card token. This allows you to manage the token lifecycle, and discard any tokens that are not useful.
[##### How to View Card Token Details](#idp261607_body)
1. Sign in as described in [Signing in to the Client Portal](signing-in-to-the-client-portal.html "Signing In to the Client Portal")
and navigate to **Issuing** > **Cards**.
The **Cards** page appears.

2. Search by **Card ID** to find the provisioned card.
3. Select **Card ID** from the drop down next to the search bar.

4. Enter the Card ID in the search bar.
5. The entry for the provisioned card appears.
6. Navigate to the row of the desired card.
7. Select the **See more details** icon.

8. The **Card details** page appears.

9. View a list of your digital wallet tokens.

10. Click on the row of the desired token.
11. The **Digital token details** side panel appears.

12. You can view the Digital token details, including:
* **Token ID** - The identifier of the card token
* **Requestor Name** - The name of the token requestor
* **Requestor ID** - The identifier associated with the token requestor
13. You can view the Device details, including:
* **Device Name** - The name of the mobile device connected to the digital wallet
* **Device\_ID** - The identifier of the mobile device
* **Device Manufacturer** - The manufacturer of the mobile device
* **Device Language** - The preferred language of the mobile device.
[##### How to Change Card Token Statuses](#idp261687_body)
1. Navigate to the **Card details** page of the provisioned card.
2. (Optional): Navigate to the card token row. Select the **Change status** icon. Skip to Step 6.
**Note**: You can also activate the token by clicking on the **Activate** icon in the card token row.

3. Select the desired token from the **Digital wallet tokens** table.
4. The digital token details side panel appears.
5. Click the Change status button.
6. The **Change token status** window appears.

7. Select the new token status from the drop-down.

8. Write a short description about the token status change.
9. Click **Confirm**.

###### Reactivating Suspended Tokens
When reactivating a suspended card token, additional verification is required. An One Time Password (OTP) will be sent to the mobile number associated with the Client Portal Account. The OTP must be submitted for the suspended card token to be reactivated.
1. Navigate to the row of the suspended token.
2. Click the **Change status** icon.
3. Enter the status change.
4. Enter a description about the status change.

5. Click **Confirm**.
6. Enter the OTP.

7. Click **Submit**.
In this section:
Search results
--------------
No results found
* [Prev](viewing-a-list-of-card-tokens.html#idp261496)
* [Next](changing-the-card-token-status.html#idp261607)
---
# View Dispute Details
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Client Portal Guide](client-portal-guide.html)
* [Mobile Version](mobile-version.html)
* [Collect](collect-383798.html)
* View Dispute Details
* [Prev](create-a-refund.html#idp268521)
* [Next](view-dispute-details.html#idp268589)
##### View Dispute Details
You can view the details of your disputes.
This documentation is for the Mobile Version of Client Portal.
[###### How to View Dispute Details](#idp268589_body)
1. Sign in as described in [Signing In to the Client Portal](signing-in-to-the-client-portal.html "Signing In to the Client Portal")
and navigate to **Collect** > **Protect** > **Disputes**.
The **Disputes** page appears.

2. Tap on a dispute to view the details.
3. The **Dispute Details** panel appears.

4. The Panel contains the following information:
**Status:**
Indicates the status of the dispute. One of the following:
* Active - a payment dispute has been sent by the card issuer
* Lose - a payment dispute has been accepted, or a challenge has failed
* Review - a dispute has been challenged and/or is pending review
* Win - a dispute has been successfully challenged
**Summary:**
* Dispute Amount - The amount being disputed listed in units of currency
* Category - The type of dispute
* Description - A textual description of the dispute
* Updated At - The date and time the dispute was last updated
* Due Date - The date and time the dispute was submitted
**Payment Details:**
* Payment ID - An alphanumeric string that is a unique ID for the payment
* Requested Amount - The amount of currency requested for the payment
* Paid Amount - The numerical amount paid
* Paid At - The date and time the refund was completed
* Payment Origin - Which system the payment originated from
* Description - A textual description of the payment
* Merchant Reference ID - A unique identifier assigned to the merchant
* Last 4 digits - The last 4 digits of the card number used in the payment
**Customer Details:**
* Customer ID - An alphanumeric string that serves as a unique identifier for the customer
* Customer Name - The name of the customer
* Customer Email - The email of the customer
* Customer Phone - The phone number of the customer
In this section:
Search results
--------------
No results found
* [Prev](create-a-refund.html#idp268521)
* [Next](view-dispute-details.html#idp268589)
---
# Viewing Listed Transactions for Provisioned Cards
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Client Portal Guide](client-portal-guide.html)
* [Issuing](issuing.html)
* Viewing Listed Transactions for Provisioned Cards
* [Prev](downloading-a-report-of-issued-card-transactions.html#idp261339)
* [Next](viewing-listed-transactions-for-provisioned-cards.html#idp261349)
#### Viewing Listed Transactions for Provisioned Cards
You can view a list of all transactions for cards that were provisioned for digital wallets. **Provisioning** refers to the process where an issued card is added to a digital wallet and tokenized. You can use Rapyd to provision cards for Apple Pay and Google Pay digital wallets.
[##### How to View Listed Transactions](#idp261349_body)
1. Sign in as described in [Signing into the Client Portal](signing-in-to-the-client-portal.html "Signing In to the Client Portal")
and navigate to **Issuing** > **Card transactions**.
The **Card transactions** page appears.

2. Search by **Contact Reference ID** to find the card transactions associated with the provisioned card.
3. Select **Contact Reference ID** from the drop down next to the search bar.

4. Enter the Contact Reference ID in the search bar.
5. The transactions for the provisioned card appear.

6. You can view the **Digital wallet token** and **Digital wallet type** for the card transactions.

7. For more information about adding Columns and filtering the search, see [Listing Issued Card Transactions](listing-issued-card-transactions.html "Listing Issued Card Transactions")
.
Description of Fields
| Field | Description |
| --- | --- |
| Transaction ID | Rapyd identifier of the transaction. |
| Amount | The amount intended for the transaction recipient. |
| Authorization Number | Reference number for the transaction authorization. |
| Currency | Currency for the amount received by the transaction recipient. |
| Created At | Time of creation of the transaction. |
| Contact Name | Name of the wallet contact that the card is assigned to. |
| Contact Reference ID | A unique identifier of the contact. |
| Contact Phone Number | Phone number of the wallet contact that the card is assigned to. |
| Direction | Direction of the transaction in relation to the card. One of the following:
* **In** - Funds are added to the card.
* **Out** - Funds are withdrawn from the card. |
| Last 4 Digits | The last four digits of the card. |
| POS Name & Location | Name and location of the transaction. |
| Status | Status of the transaction. One of the following:
* Canceled
* Closed |
| Wallet ID | ID of the wallet that the card is related to. |
| Digital Wallet Token | The identifier for the provisioned card token. |
| Digital Wallet Type | The type of digital wallet for the provisioned card. Possible values are:
* Google Pay Wallet
* Apple Pay Wallet |
In this section:
Search results
--------------
No results found
* [Prev](downloading-a-report-of-issued-card-transactions.html#idp261339)
* [Next](viewing-listed-transactions-for-provisioned-cards.html#idp261349)
---
# Submitting a Support Ticket
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Client Portal Guide](client-portal-guide.html)
* [Settings](settings.html)
* Submitting a Support Ticket
* [Prev](viewing-notifications.html#idp251590)
* [Next](submitting-a-support-ticket.html#idp251738)
#### Submitting a Support Ticket
Submit a support ticket within Client Portal.
[##### How to Submit a Support Ticket](#idp251738_body)
1. Sign in as described in [Accessing the Client Portal](accessing-the-client-portal.html "Accessing the Client Portal")
and click on the question mark icon in the upper right corner.

2. The **Support center** page appears.

3. Click the **Contact support** button in the upper right corner.

4. The **Contact support** panel appears.
5. Complete the Description field, and click **Next**.

6. Complete the following required fields:
* **Category** - general, technical, or financial query
* **Environment** - Production or Sandbox
* **Subject** - The subject of the ticket
* **Discovery date** - The time frame when the issue was discovered
* **Total transaction value** - The value of the affected transaction
* **How many transactions or users were affected** - Single, Partial, All, or Not relevant
7. Click **Next**.

8. (Optional) Upload any relevant files for your support ticket by clicking the **+** button.

9. Click **Submit**.
In this section:
Search results
--------------
No results found
* [Prev](viewing-notifications.html#idp251590)
* [Next](submitting-a-support-ticket.html#idp251738)
---
# External Network Tokenization
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Product Guide](product-guide.html)
* [Rapyd Collect](rapyd-collect.html)
* [Payment Features](payment-features.html)
* External Network Tokenization
* [Prev](payment-with-fx.html#idp223652)
* [Next](external-network-tokenization.html#idp223979)
##### External Network Tokenization
Securely accept card payments using network tokens provisioned by third-party on-behalf token requestors.
You can use Rapyd to accept card payments with a third party network token. **Tokens** are alphanumeric strings that can be used instead of a PAN (Primary Account Number) for card transactions. **Network tokens** are a specific kind of card token issued by a **card network** like Visa or Mastercard.
A third-party on-behalf token requestor can ask Visa or Mastercard to issue a network token. A token requestor has an integration with Visa and Mastercard Token Services. The network tokens are used by the merchants working with the token requestor.
Network tokens are used to make card transactions more secure. The PAN (Primary Account Number) of a credit card is a 16-19 digit number used to identify the card. The network token acts as a placeholder to protect sensitive information during transactions. A network token is tied to a specific card, merchant, and token provider, which provides increased safety. For example, two different network tokens will be issued for a card that is tokenized by two different merchants.
There are two elements to network tokens: the token string and the tavv (token authentication verification value). The **tavv** is a cryptogram generated by the card network and acts as an additional security measure. The merchant obtains new tavv cryptograms from the token provider (third-party token requestor).
You can use the Rapyd Collect API to initiate a card payment using a third-party network token. Network tokenization provides a more secure way to process your card payments, and helps to prevent fraud.
[###### Use Case](#idp223979_body)
You are a partner or integrator working with multiple acquirers. You're looking for card acquiring services through Rapyd. You contract with a third-party on-behalf token requestor. You register your merchants with the token provider.
You send your tokenization requests to the third-party token provider for the card information you have on file. You receive a network token in return, and store the network token for the card payment. During payment, you request a tavv cryptogram from the token requestor. You can then send your card payment to any acquirer.
[###### Card Payment With Network Token Workflow](#idp223983_body)

1. The customer completes the card payment in checkout on your website and consents to save their card information.
2. The card information is sent to the third-party token provider, who requests a token for the card from the appropriate card network.
3. You request Rapyd to process the card payment with a network token and token cryptogram.
4. Rapyd processes the payment and sends the response and webhook back to you.
5. You display your purchase success page to the customer.
### PCI Certification
Only clients with [PCI-DSS](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_dss "Payment Card Industry Data Security Standard")
certification can handle personal identifying information for cards. This method is available to merchants who have signed a special agreement with Rapyd.
[###### How Card Payments With Network Tokens Work](#idp224003_body)
[###### Find Available Payment Methods](#idp224005_body)
Decide the Card Payment Types You'll Accept in a Chosen Country. Use [List Payment Methods by Country](list-payment-methods-by-country.html "List Payment Methods by Country")
with the following parameters:
* **IS** and **ISK** are used for country and currency in the sample codes below. **is\_visa\_card** is the payment method type.
Description of Query Parameters
| | |
| --- | --- |
| Query Parameter | Description |
| country | Enter **IS** as the country code. |
| currency | Enter **ISK** as the currency code. |
###### List Payment Methods by Country Request
* * Request
* // Request URL: GET https://sandboxapi.rapyd.net/v1/payment\_methods/country?country=IS¤cy=ISK
// Message body absent
###### List Payment Methods by Country Response
* * Response
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "c53a2e6b-74f6-42ba-a0a3-21724346a36c"
},
"data": \[\
{\
"type": "is\_iban",\
"name": "tEST---is\_iban",\
"category": "bank\_transfer",\
"image": "https://iconslib.rapyd.net/checkout/is\_iban.png",\
"country": "IS",\
"payment\_flow\_type": "card",\
"currencies": \[\
"ISK"\
\],\
"status": 1,\
"is\_cancelable": false,\
"payment\_options": \[\
{\
"name": "capture",\
"type": "boolean",\
"regex": "",\
"description": "Determines when the payment is processed for capture",\
"is\_required": false,\
"is\_updatable": false\
},\
{\
"name": "complete\_payment\_url",\
"type": "string",\
"regex": "",\
"description": "URL where the customer is redirected for final steps in completing the operation.",\
"is\_required": true,\
"is\_updatable": false\
},\
{\
"name": "error\_payment\_url",\
"type": "string",\
"regex": "",\
"description": "URL where the customer is redirected in case of an error in the operation.",\
"is\_required": true,\
"is\_updatable": false\
},\
{\
"name": "statement\_descriptor",\
"type": "string",\
"regex": "^.{1,13}$",\
"description": "A text description suitable for a customer's payment statement.",\
"is\_required": false\
},\
{\
"name": "description",\
"type": "string",\
"regex": "^(\[a-zA-Z\]){1,254}$",\
"description": "Description of the product or service",\
"is\_required": true,\
"is\_updatable": false\
}\
\],\
"is\_expirable": true,\
"is\_online": true,\
"is\_refundable": true,\
"minimum\_expiration\_seconds": 600,\
"maximum\_expiration\_seconds": 604800,\
"virtual\_payment\_method\_type": null,\
"is\_virtual": false,\
"multiple\_overage\_allowed": false,\
"amount\_range\_per\_currency": \[\
{\
"currency": "ISK",\
"maximum\_amount": null,\
"minimum\_amount": null\
}\
\],\
"is\_tokenizable": false,\
"supported\_digital\_wallet\_providers": \[\],\
"is\_restricted": false,\
"supports\_subscription": false\
},\
{\
"type": "is\_kwp\_card",\
"name": "KWP",\
"category": "card",\
"image": "https://iconslib.rapyd.net/checkout/is\_kwp\_card.png",\
"country": "is",\
"payment\_flow\_type": "",\
"currencies": \[\
"ISK"\
\],\
"status": 1,\
"is\_cancelable": true,\
"payment\_options": \[\
{\
"name": "description",\
"type": "string",\
"regex": "",\
"description": "the description field must be filled in.",\
"is\_required": true,\
"is\_updatable": false\
},\
{\
"name": "complete\_payment\_url",\
"type": "string",\
"regex": "",\
"description": "the complete\_payment\_url field must be filled in.",\
"is\_required": true,\
"is\_updatable": false\
},\
{\
"name": "error\_payment\_url",\
"type": "string",\
"regex": "",\
"description": "the error\_payment\_url field must be filled in.",\
"is\_required": true,\
"is\_updatable": false\
}\
\],\
"is\_expirable": false,\
"is\_online": true,\
"is\_refundable": true,\
"minimum\_expiration\_seconds": 0,\
"maximum\_expiration\_seconds": 0,\
"virtual\_payment\_method\_type": null,\
"is\_virtual": false,\
"multiple\_overage\_allowed": false,\
"amount\_range\_per\_currency": \[\
{\
"currency": "ISK",\
"maximum\_amount": null,\
"minimum\_amount": null\
}\
\],\
"is\_tokenizable": false,\
"supported\_digital\_wallet\_providers": \[\
"apple\_pay"\
\],\
"is\_restricted": false,\
"supports\_subscription": false\
},\
{\
"type": "is\_mastercard\_card",\
"name": "Mastercard",\
"category": "card",\
"image": "https://iconslib.rapyd.net/checkout/is\_mastercard\_card.png",\
"country": "is",\
"payment\_flow\_type": "",\
"currencies": \[\
"ISK"\
\],\
"status": 1,\
"is\_cancelable": true,\
"payment\_options": \[\
{\
"name": "capture",\
"type": "boolean",\
"regex": "",\
"description": "Determines when the payment is processed for capture.",\
"is\_required": false,\
"is\_updatable": false\
},\
{\
"name": "complete\_payment\_url",\
"type": "string",\
"regex": "",\
"description": "the complete\_payment\_url field must be filled in.",\
"is\_required": true,\
"is\_updatable": false\
},\
{\
"name": "error\_payment\_url",\
"type": "string",\
"regex": "",\
"description": "the error\_payment\_url field must be filled in.",\
"is\_required": true,\
"is\_updatable": false\
},\
{\
"name": "customer",\
"type": "string",\
"regex": "",\
"description": "ID of a customer object, a string starting with ‘cus\_‘. The customer object must contain the fields listed as required, and can contain additional fields listed here.If the customer object does not exist yet, use ‘Create Customer‘",\
"is\_required": false,\
"is\_updatable": false\
},\
{\
"name": "initiation\_type",\
"type": "string",\
"regex": "(customer\_present|installment|moto|recurring|unscheduled)",\
"description": "This indicates how the transaction was initiated",\
"is\_required": false,\
"is\_updatable": false\
}\
\],\
"is\_expirable": false,\
"is\_online": true,\
"is\_refundable": true,\
"minimum\_expiration\_seconds": 0,\
"maximum\_expiration\_seconds": 0,\
"virtual\_payment\_method\_type": null,\
"is\_virtual": false,\
"multiple\_overage\_allowed": false,\
"amount\_range\_per\_currency": \[\
{\
"currency": "ISK",\
"maximum\_amount": null,\
"minimum\_amount": null\
}\
\],\
"is\_tokenizable": false,\
"supported\_digital\_wallet\_providers": \[\
"apple\_pay"\
\],\
"is\_restricted": false,\
"supports\_subscription": false\
},\
{\
"type": "is\_visa\_card",\
"name": "Visa",\
"category": "card",\
"image": "https://iconslib.rapyd.nethttps://qaiconslib.rapyd.net/https://qaiconslib.rapyd.net/checkout/is\_visa\_card.png",\
"country": "IS",\
"payment\_flow\_type": "",\
"currencies": \[\
"ISK"\
\],\
"status": 1,\
"is\_cancelable": true,\
"payment\_options": \[\
{\
"name": "description",\
"type": "string",\
"regex": "",\
"description": "the description field must be filled in.",\
"is\_required": false,\
"is\_updatable": false\
},\
{\
"name": "capture",\
"type": "boolean",\
"regex": "",\
"description": "Determines when the payment is processed for capture.",\
"is\_required": false,\
"is\_updatable": false\
},\
{\
"name": "complete\_payment\_url",\
"type": "string",\
"regex": "",\
"description": "the complete\_payment\_url field must be filled in.",\
"is\_required": true,\
"is\_updatable": false\
},\
{\
"name": "error\_payment\_url",\
"type": "string",\
"regex": "",\
"description": "the error\_payment\_url field must be filled in.",\
"is\_required": true,\
"is\_updatable": false\
},\
{\
"name": "customer",\
"type": "string",\
"regex": "",\
"description": "ID of a customer object, a string starting with ‘cus\_‘. The customer object must contain the fields listed as required, and can contain additional fields listed here.If the customer object does not exist yet, use ‘Create Customer‘",\
"is\_required": true,\
"is\_updatable": false\
},\
{\
"name": "ewallet",\
"type": "string",\
"regex": "^ewallet\_\[a-f0-9\]{32}$",\
"conditions": \[\
{\
"operator": "$eq",\
"description": "If the value of the field type is true, ewallet is mandatory field",\
"element\_name": "payment.payment\_method\_options.aft",\
"threshold\_value": "true"\
}\
\],\
"description": "ID of the wallet that the money is paid into. String starting with ewallet\_.",\
"is\_required": false,\
"is\_updatable": false\
},\
{\
"name": "initiation\_type",\
"type": "string",\
"regex": "(customer\_present|installment|moto|recurring|unscheduled)",\
"description": "This indicates how the transaction was initiated",\
"is\_required": false,\
"is\_updatable": false\
}\
\],\
"is\_expirable": false,\
"is\_online": false,\
"is\_refundable": true,\
"minimum\_expiration\_seconds": 0,\
"maximum\_expiration\_seconds": 0,\
"virtual\_payment\_method\_type": null,\
"is\_virtual": false,\
"multiple\_overage\_allowed": false,\
"amount\_range\_per\_currency": \[\
{\
"currency": "ISK",\
"maximum\_amount": null,\
"minimum\_amount": null\
}\
\],\
"is\_tokenizable": false,\
"supported\_digital\_wallet\_providers": \[\
"apple\_pay"\
\],\
"is\_restricted": false,\
"supports\_subscription": false\
}\
\]
}
[###### Get the Required Fields for the Payment Method Type](#idp224058_body)
Use the [Get Payment Method Required Fields](get-payment-method-required-fields.html "Get Payment Method Required Fields")
with the following parameter:
The `data` section of this response shows that a Valitor card is the payment method type you will use.
Description of Path Parameters
| | |
| --- | --- |
| Path Parameter | Description |
| type | Enter **is\_visa\_card** as the payment method type. |
###### Get Payment Method Required Fields Request
Request a set of required fields for a card.
* * Request
* // Request URL: GET https://sandboxapi.rapyd.net/v1/payment\_methods/required\_fields/is\_visa\_card
// Message body absent
###### Get Payment Method Required Fields Response
The response below shows that for a Valitor card, the customer must fill in:
* `name`
* `number`
* `expiration_month`
* `expiration_year`
* `CVV`
* * Response
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "1afab4a9-2c9e-449b-a36b-a6d4231a1bb9"
},
"data": {
"type": "is\_visa\_card",
"fields": \[\
{\
"name": "token",\
"type": "string",\
"regex": "",\
"is\_required": false,\
"instructions": ""\
},\
{\
"name": "name",\
"type": "string",\
"regex": "",\
"is\_required": true,\
"instructions": "card holder name"\
},\
{\
"name": "number",\
"type": "string",\
"regex": "",\
"is\_required": true,\
"instructions": "card number"\
},\
{\
"name": "expiration\_month",\
"type": "string",\
"regex": "",\
"is\_required": true,\
"instructions": "expiration month as string, 01-12"\
},\
{\
"name": "expiration\_year",\
"type": "string",\
"regex": "",\
"is\_required": true,\
"instructions": "expiration year in to digits as string, 18-99"\
},\
{\
"name": "cvv",\
"type": "string",\
"regex": "",\
"is\_required": true,\
"instructions": "card cvv"\
},\
{\
"name": "merchant\_custom\_token",\
"type": "string",\
"regex": "",\
"is\_required": false,\
"instructions": "merchant custom token"\
},\
{\
"name": "recurrence\_type",\
"type": "string",\
"regex": "(recurring|installment|unscheduled)",\
"description": "This indicates the purpose of the token. should be aligned with the subsequent payments using the token.",\
"is\_required": false,\
"is\_updatable": false\
},\
{\
"name": "network\_reference\_id",\
"type": "string",\
"regex": "",\
"description": "Network Reference Id",\
"is\_required": false\
},\
{\
"name": "number\_type",\
"type": "string",\
"regex": "(fpan|tpan)",\
"description": "Determining if number is funding PAN or token PAN",\
"is\_required": false\
}\
\],
"payment\_method\_options": \[\
{\
"name": "3d\_required",\
"type": "boolean",\
"regex": "",\
"description": "Allows the client to determine whether the customer is required to complete 3DS authentication for the transaction",\
"is\_required": false,\
"is\_updatable": false\
},\
{\
"name": "is\_korta",\
"type": "boolean",\
"regex": "",\
"description": "",\
"is\_required": false,\
"is\_updatable": false\
},\
{\
"name": "merchant\_ref",\
"type": "string",\
"regex": "",\
"description": "",\
"is\_required": false,\
"is\_updatable": false\
},\
{\
"name": "3d\_version",\
"type": "String",\
"regex": "(1.0.2|2.1.0|2.2.0)",\
"description": "3D Secure version of the transaction.",\
"is\_required": false,\
"is\_updatable": false\
},\
{\
"name": "cavv",\
"type": "String",\
"regex": "",\
"description": "Cardholder Authentication Verification Value represented as a 20-byte value that is base64 encoded.",\
"is\_required": false,\
"is\_updatable": false\
},\
{\
"name": "eci",\
"type": "String",\
"regex": "(01|02|05|06|07|08)",\
"description": "Electronic Commerce Indicator (ECI) from MPI Plugin(3-D Secure 1.0) or 3DS Server(3-D Secure 2.0).",\
"is\_required": false,\
"is\_updatable": false\
},\
{\
"name": "xid",\
"type": "String",\
"regex": "",\
"description": "3D Secure XID, Base64 encoded.Required for VISA 1.0",\
"is\_required": false,\
"is\_updatable": false\
},\
{\
"name": "ds\_trans\_id",\
"type": "String",\
"regex": "",\
"description": "The Directory Server (DS) Transaction ID. Required Mastercard 2.0.",\
"is\_required": false,\
"is\_updatable": false\
},\
{\
"name": "special\_features",\
"type": "string",\
"regex": "^(crypto)$",\
"description": "Additional information about the payment. Possible values: crypto - The payment involves cryptocurrency. ",\
"is\_required": false\
},\
{\
"name": "is\_valitor",\
"type": "boolean",\
"regex": "",\
"description": "",\
"is\_required": false,\
"is\_updatable": false\
},\
{\
"name": "tavv",\
"type": "String",\
"regex": "",\
"description": "Token Authentication Verification Value represented as a 20-byte value that is base64 encoded.",\
"is\_required": false,\
"is\_updatable": false\
}\
\],
"payment\_options": \[\
{\
"name": "description",\
"type": "string",\
"regex": "",\
"description": "the description field must be filled in.",\
"is\_required": false,\
"is\_updatable": false\
},\
{\
"name": "capture",\
"type": "boolean",\
"regex": "",\
"description": "Determines when the payment is processed for capture.",\
"is\_required": false,\
"is\_updatable": false\
},\
{\
"name": "complete\_payment\_url",\
"type": "string",\
"regex": "",\
"description": "the complete\_payment\_url field must be filled in.",\
"is\_required": true,\
"is\_updatable": false\
},\
{\
"name": "error\_payment\_url",\
"type": "string",\
"regex": "",\
"description": "the error\_payment\_url field must be filled in.",\
"is\_required": true,\
"is\_updatable": false\
},\
{\
"name": "is\_korta",\
"type": "boolean",\
"regex": "",\
"description": "",\
"is\_required": false,\
"is\_updatable": false\
},\
{\
"name": "customer",\
"type": "string",\
"regex": "",\
"description": "ID of a customer object, a string starting with cus\_. The customer object must contain the fields listed as required, and can contain additional fields listed here.If the customer object does not exist yet, use Create Customer",\
"is\_required": true,\
"is\_updatable": false\
}\
\],
"minimum\_expiration\_seconds": 60,
"maximum\_expiration\_seconds": 604800
}
}
[###### Create a Card Payment for a Customer](#idp224119_body)
See [Create Payment](create-payment.html "Create Payment")
for more detailed information about the fields and objects used in the request.
Description of Body Parameters
| | |
| --- | --- |
| Body Parameter | Description |
| amount | Enter 250 as the payment amount. |
| currency | Enter **USD** as the currency code. |
| capture | Enter **true** as the value. This tells Rapyd to collect the payment for you right away. If 'false', a hold will be put on the card and the funds will not be captured until the status is updated. |
Object Fields
Include the `payment_method` object and `payment_method_options` object in the body of the request.
| Object | Field | Description |
| --- | --- | --- |
| payment\_method | type | Enter **is\_visa\_card** as the type |
| payment\_method | name | Enter **Visa Card Test** as the name |
| payment\_method | number | Enter **5186151969991591** as the card number |
| payment\_method | expiration\_month | Enter **12** as the expiration month |
| payment\_method | expiration\_year | Enter **30** as the expiration year |
| payment\_method | cvv | Enter **123** |
| payment\_method | number\_type | Indicates if the **number** field contains a card token or a regular card number.
Two possible values:
* **TPAN** - tokenized primary account number.
* **FPAN** - funding primary account number.
Enter **TPAN** as the value when using a network token for the payment. |
| payment\_method\_options | tavv | Enter **AIwq5CHaXx1uAD09xomcAAADFA==**
* This field is required for customer initiated payments.
* This field is optional for merchant initiated payments. |
###### Create Payment Request
* * Request
* // Request URL: POST https://sandboxapi.rapyd.net/v1/payments
// Message body:
{
"amount": 250,
"currency": "USD",
"capture": true,
"description": "visa demo 3",
"initiation\_type": "customer\_present",
"payment\_method": {
"type": "is\_visa\_card",
"fields": {
"name": "Visa Card Test",
"number": "5186151969991591",
"expiration\_month": "12",
"expiration\_year": "30",
"number\_type": "TPAN"
}
},
"payment\_method\_options": {
"cavv": "kBMcQDw42rjEKBDCA/WQw5eBlMGf",
"eci": "02",
"ds\_trans\_id": "8a567e19-8580-49bd-a5e5-2d6bc1924602",
"tavv": "AIwq5CHaXxluAD09xomcAAADFA=="
},
"complete\_payment\_url": "https://www.rapyd.net",
"error\_payment\_url": "https://www.docs.rapyd.net"
}
###### Create Payment Response
* * Response
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "a3ff86a3-f045-4806-9e32-8c3c99c2c820"
},
"data": {
"id": "payment\_1d022d3ff321baf483525253072d3943",
"amount": 250,
"original\_amount": 250,
"is\_partial": false,
"currency\_code": "USD",
"country\_code": "IS",
"status": "CLO",
"description": "visa demo 3",
"merchant\_reference\_id": "",
"customer\_token": "cus\_b3c1bd3012ea414219fd95243c0803b0",
"payment\_method": "card\_fb413caa11dd94e3bcffb0dff24f6290",
"payment\_method\_data": {
"id": "card\_fb413caa11dd94e3bcffb0dff24f6290",
"type": "is\_visa\_card",
"category": "card",
"metadata": null,
"image": "",
"webhook\_url": "",
"supporting\_documentation": "",
"next\_action": "not\_applicable",
"name": "Visa Card Test",
"last4": "1591",
"acs\_check": "unchecked",
"cvv\_check": "unchecked",
"bin\_details": {
"type": null,
"brand": null,
"level": null,
"issuer": null,
"country": null,
"bin\_number": "518615"
},
"number\_type": "TPAN",
"expiration\_year": "30",
"expiration\_month": "12",
"fingerprint\_token": "ocfp\_180e9479ba47ac71fb88dcf719e88234",
"network\_reference\_id": "ABC8791471120"
},
"auth\_code": "794487",
"expiration": 1701085308,
"captured": true,
"refunded": false,
"refunded\_amount": 0,
"receipt\_email": "",
"redirect\_url": "",
"complete\_payment\_url": "https://www.rapyd.net",
"error\_payment\_url": "https://www.docs.rapyd.net",
"receipt\_number": "",
"flow\_type": "",
"address": null,
"statement\_descriptor": "ARMONICCI",
"transaction\_id": "",
"created\_at": 1700480507,
"metadata": {},
"failure\_code": "",
"failure\_message": "",
"paid": true,
"paid\_at": 1700480519,
"dispute": null,
"refunds": null,
"order": null,
"outcome": null,
"visual\_codes": {},
"textual\_codes": {},
"instructions": {},
"ewallet\_id": "ewallet\_cada587d3a817b42fca2c6ba63ac1d1b",
"ewallets": \[\
{\
"ewallet\_id": "ewallet\_cada587d3a817b42fca2c6ba63ac1d1b",\
"amount": 250,\
"percent": 100,\
"refunded\_amount": 0\
}\
\],
"payment\_method\_options": {
"eci": "02",
"cavv": "kBMcQDw42rjEKBDCA/WQw5eBlMGf",
"ds\_trans\_id": "8a567e19-8580-49bd-a5e5-2d6bc1924602"
},
"payment\_method\_type": "is\_visa\_card",
"payment\_method\_type\_category": "card",
"fx\_rate": 1,
"merchant\_requested\_currency": null,
"merchant\_requested\_amount": null,
"fixed\_side": "",
"payment\_fees": null,
"invoice": "",
"escrow": null,
"group\_payment": "",
"cancel\_reason": null,
"initiation\_type": "customer\_present",
"mid": "mid\_63e991ad4ba1a1508ffa8df196c0b8e3",
"next\_action": "not\_applicable",
"error\_code": "",
"remitter\_information": {},
"save\_payment\_method": true
}
}
The response shows that Rapyd successfully processed the payment based on the amount, currency, and payment method.
The payment is successful since the `status` is **CLO** (closed).
You can now notify your customer that the purchase is complete.
In this section:
Regulations developed for the [payment card industry](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_pci)
for data security and protection against fraud.
Search results
--------------
No results found
* [Prev](payment-with-fx.html#idp223652)
* [Next](external-network-tokenization.html#idp223979)
---
# Bank Payout United Kingdom
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Product Guide](product-guide.html)
* [Payout Method Types](payout-method-types.html)
* [EMEA](emea-401604.html)
* Bank Payout United Kingdom
* [Prev](bank-payout-ukraine.html#idp241360)
* [Next](bank-payout-united-kingdom.html#idp241411)
##### Bank Payout United Kingdom
Disburse funds directly to a bank account. | `Enterprise`
**gb\_fps\_bank** is a new bank payout method type via UK Faster Payments, that is used for payouts in the United Kingdom. A sender can disburse funds into a beneficiary’s bank account in the United Kingdom. This payout method supports several banks in the region and allows the beneficiary to be paid in the country’s local currency.
The benefits for the user include the ability to create real-time payouts through local bank transfers and disburse funds into United Kingdom bank accounts.
[###### Finding Required Fields for the Payout Method Type](#idp241411_body)
You need to find the required fields for each payout method type.
For that, you'll use [Get Payout Required Fields](get-payout-required-fields.html "Get Payout Required Fields")
. Enter **gb\_fps\_bank** as the value for the `payout_method_type` path parameter.
[###### Requesting a Payout](#idp241418_body)
Use [Create Payout](create-payout.html "Create Payout")
with the following parameters:
Create Payout Request Parameters
| | |
| --- | --- |
| **Body Parameter** | **Description** |
| ewallet | Enter the wallet 'id' that you received when you created the company wallet in your sandbox. |
| payout\_amount | Enter 100 as the amount received by the beneficiary. |
| payout\_method\_type | Enter **gb\_fps\_bank** as the payout method type. |
| sender\_currency | Enter **GBP** as the code for British Pound Sterling, the sender's currency. |
| sender\_country | Enter **GB** as the code for the United Kingdom, the sender's country. |
| beneficiary\_country | Enter **GB** as the code for the United Kingdom, the beneficiary's country. |
| payout\_currency | Enter **GBP** as the code for British Pound Sterling, the currency received by the beneficiary. |
| sender\_entity\_type | Enter ‘individual’ as the type of entity for the sender. |
| beneficiary\_entity\_type | Enter ‘individual’ as the type of entity for the beneficiary. |
| beneficiary | Enter a `beneficiary object` that has the following fields:
* **company\_name** - company
* **date\_of\_incorporation** - company
* **identification\_type** - individual or company
* **identification\_value** - individual or company
* **first\_name** - individual
* **last\_name** - individual
* **date\_of\_birth** - individual
* **phone\_number** - individual or company
* **iban** - individual or company
* **address** - individual or company
* **post\_code** - individual or company
* **city** - individual or company
* **country** - individual or company |
| sender | Enter a `sender` object that has the following fields:
* **company\_name** - company
* **first\_name** - individual
* **last\_name** - individual
* **date\_of\_birth** - individual
* **identification\_type** - individual or company
* **identification\_value** - individual or company
* **phone \_number** - individual or company
* **address** - individual or company
* **city** - individual or company
* **postcode** - individual or company
* **country** - individual or company
* **source\_of\_income** - individual or company
* **date\_of\_incorporation** - company |
| description | Enter ‘salary payout - wallet to bank account’ as the description of the payout transaction. |
| payout\_options | Enter a `payout_options` object with the following fields:
* **beneficiary\_country**
* **beneficiary\_relationship**
* **purpose\_code** |
[###### Create Payout Response](#idp241598_body)
[Create Payout](create-payout.html "Create Payout")
describes the fields in the response.
[###### Local Bank Payout United Kingdom Details](#idp241602_body)
| | |
| --- | --- |
| **Details** | **Description** |
| Payout Method Category | bank |
| Payout Request String | POMT = gb\_fps\_bank |
| Country | United Kingdom |
| Sender Currency | USD, ISK, GBP, EUR, SGD, HKD, AUD |
| Transaction Limits | Minimum / transaction: 1.00 GBP
Maximum / transaction: 999,999 GBP |
| Settlement Timeframe | Real-time |
In this section:
Search results
--------------
No results found
* [Prev](bank-payout-ukraine.html#idp241360)
* [Next](bank-payout-united-kingdom.html#idp241411)
---
# Viewing Payout Methods
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Client Portal Guide](client-portal-guide.html)
* [Settings](settings.html)
* Viewing Payout Methods
* [Prev](viewing-payment-methods.html#UUID-60fe49b9-927b-e16a-05de-9e9e37367f06_N1692125156614)
* [Next](viewing-payout-methods.html#idp251070)
#### Viewing Payout Methods
Payout methods are listed on the **Payout Methods** page.
[##### How to View Payout Methods](#idp251070_body)
1. Sign in as described in [Signing in to the Client Portal](signing-in-to-the-client-portal.html "Signing In to the Client Portal")
.
2. Navigate to **Settings** > **Payout Methods**.
The **Payout Methods** page appears.

3. Toggle between the production environment and the sandbox environment.
* If you are in the production environment and select **Payout Methods**, you will see all of the payout methods your company is currently licensed to use.
* If you are in the sandbox environment and select **Payout Methods**, you will see all available payout methods.
4. You can modify the display as follows:
* Use the **Card view** to look around the payment methods by region and country.

* To view payment methods by row, select **Table view**.

* To choose the columns to display, click the **Choose Columns** icon in the upper right.
* To filter the list, click the **Filter** icon in the upper right.
###### Activate / Deactivate Payout Method
You can activate or deactivate a payout method by going to the Active or Deactivated tab and click the **three dots** at the end of the row > **Activate** or **Deactivate**.
[##### Request a Payout Method](#UUID-76394fc9-e439-2a5d-15ce-723ebf1d8eb8_N1692125029624_body)
To request a payout method, navigate to **Settings** > **Payout Methods** > **No Access** > **three dots** at the end of the row > **Request Access**.
### Prerequisite: Submit Your KYB
Your KYB for Account Activation should be submitted before requesting access to payout methods with Rapyd Disburse.
In this section:
Search results
--------------
No results found
* [Prev](viewing-payment-methods.html#UUID-60fe49b9-927b-e16a-05de-9e9e37367f06_N1692125156614)
* [Next](viewing-payout-methods.html#idp251070)
---
# Managing Your User Profile
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Client Portal Guide](client-portal-guide.html)
* [My Account](my-account.html)
* Managing Your User Profile
* [Prev](creating-multiple-accounts.html#idp250076)
* [Next](managing-your-user-profile.html#idp250104)
#### Managing Your User Profile
From the User Profile page, you can view and manage your:
* Personal details.
* Secure login MFA method.
* Assigned accounts.
[##### How to Manage Your User Profile](#idp250104_body)
* Sign in as described in [Accessing the Client Portal](accessing-the-client-portal.html "Accessing the Client Portal")
and navigate to the user account drop-down in the upper right corner.
* Select the **User profile** icon from the drop-down menu.

The **User profile** page appears.

### Note
The information displayed on the User profile page depends on your role. See [Users and Roles](users-and-roles.html "Users and Roles")
.
[##### Editing Personal Details](#idp250124_body)
You can edit personal details including the following:
* Full name
* Phone number
* Password
**Note**: You can reset your password via Whatsapp if you have MFA (multi-factor authentication) enabled via Whatsapp. To edit the SMS or MFA Settings, refer to [Changing Your MFA Preference](changing-your-mfa-preference.html "Changing Your MFA Preference")
.
Click **Edit** on the right, type your new information, and click **Save** or **Apply**.
Under the **Assigned Accounts** section, you can see the accounts you’re assigned to. You can remove yourself from an assigned account if you are not the owner.
The account owner can delete an assigned account by navigating to **Settings** > **Account Details**.
### Warning
Do not share your password details with anyone. Refer to [Users and Roles](users-and-roles.html "Users and Roles")
about inviting restricted users to your account.
In this section:
Search results
--------------
No results found
* [Prev](creating-multiple-accounts.html#idp250076)
* [Next](managing-your-user-profile.html#idp250104)
---
# Rendimento
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Product Guide](product-guide.html)
* [Payout Method Types](payout-method-types.html)
* [Americas](americas-497167.html)
* Rendimento
* [Prev](bank-payout-united-states.html#idp237841)
* [Next](rendimento.html#idp237894)
##### Rendimento
Use a variety of local payout methods in Brazil. | `Enterprise`
Rendimento is a gateway in the Rapyd Network that allows you to process transactions and complete local payouts using bank transfers from Brazil.
Bank transfers are a Payout Method Type that allow for the accurate disbursement of funds to a beneficiary, or recipient of the funds.
The benefits for the user include the ability to create crossborder payouts and disburse funds into various bank accounts.
You need to find the required fields for each payout method type when creating a payout. See [Payout to a Bank Account](bank-account-payout.html "Bank Account Payout")
for more detailed information about creating a payout.
[###### Supported Bank POMTs and Bank Codes](#idp237894_body)
Below is a list of all the supported bank POMTs for **Rendimento** and their bank codes:
| Bank POMT | Bank Code |
| --- | --- |
| br\_banco\_digio\_xb\_bank | 335 |
| br\_banco\_acesso\_xb\_bank | 332 |
| br\_banco\_agibank\_xb\_bank | 121 |
| br\_banco\_xp\_sa\_xb\_bank | 348 |
| br\_banco\_mercado\_pago\_xb\_bank | 323 |
| br\_banco\_pagseguro\_xb\_bank | 290 |
| br\_banco\_safra\_sa\_xb\_bank | 422 |
| br\_banco\_c6\_xb\_bank | 336 |
| br\_banco\_seguro\_xb\_bank | 081 |
| br\_banco\_travelex\_xb\_bank | 095 |
| br\_banco\_credialianca\_xb\_bank | 098 |
| br\_banco\_cm\_xb\_bank | 180 |
| br\_banco\_bradescard\_xb\_bank | 063 |
| br\_banco\_moneycorp\_xb\_bank | 259 |
| br\_banco\_sagitur\_xb\_bank | 270 |
| br\_banco\_agk\_xb\_bank | 272 |
| br\_banco\_sulcredi\_miguel\_xb\_bank | 273 |
| br\_banco\_money\_plus\_xb\_bank | 274 |
| br\_banco\_senff\_xb\_bank | 276 |
| br\_banco\_genial\_xb\_bank | 278 |
| br\_banco\_coop\_primavera\_xb\_bank | 279 |
| br\_banco\_avista\_xb\_bank | 280 |
| br\_banco\_coopavel\_xb\_bank | 281 |
| br\_banco\_rb\_xb\_bank | 283 |
| br\_banco\_frente\_xb\_bank | 285 |
| br\_banco\_sulcredi\_ouro\_xb\_bank | 286 |
| br\_banco\_carol\_xb\_bank | 288 |
| br\_banco\_decyseo\_xb\_bank | 289 |
| br\_banco\_bs2\_xb\_bank | 292 |
| br\_banco\_lastro\_xb\_bank | 293 |
| br\_banco\_vision\_xb\_bank | 296 |
| br\_banco\_vip\_xb\_bank | 298 |
| br\_banco\_sorocred\_xb\_bank | 299 |
| br\_banco\_bpp\_xb\_bank | 301 |
| br\_banco\_portopar\_xb\_bank | 306 |
| br\_banco\_terra\_xb\_bank | 307 |
| br\_banco\_cambionet\_xb\_bank | 309 |
| br\_banco\_vortx\_xb\_bank | 310 |
| br\_banco\_pi\_xb\_bank | 315 |
| br\_banco\_om\_xb\_bank | 319 |
| br\_banco\_crefaz\_xb\_bank | 321 |
| br\_banco\_ccr\_xb\_bank | 322 |
| br\_banco\_orama\_xb\_bank | 325 |
| br\_banco\_parati\_xb\_bank | 326 |
| br\_banco\_qi\_xb\_bank | 329 |
| br\_banco\_bari\_xb\_bank | 330 |
| br\_banco\_fram\_xb\_bank | 331 |
| br\_banco\_super\_xb\_bank | 340 |
| br\_banco\_creditas\_xb\_bank | 342 |
| br\_banco\_ffa\_xb\_bank | 343 |
| br\_banco\_amagig\_xb\_bank | 349 |
| br\_banco\_crenhor\_xb\_bank | 350 |
| br\_banco\_toro\_xb\_bank | 352 |
| br\_banco\_necton\_xb\_bank | 354 |
| br\_banco\_otimo\_xb\_bank | 355 |
| br\_banco\_zema\_xb\_bank | 359 |
| br\_banco\_trinus\_xb\_bank | 360 |
| br\_banco\_cielo\_xb\_bank | 362 |
| br\_banco\_socopa\_xb\_bank | 363 |
| br\_banco\_gerencianet\_xb\_bank | 364 |
| br\_banco\_solidus\_xb\_bank | 365 |
| br\_banco\_vitreo\_xb\_bank | 367 |
| br\_banco\_csf\_xb\_bank | 368 |
| br\_banco\_warren\_xb\_bank | 371 |
| br\_banco\_up\_xb\_bank | 373 |
| br\_banco\_mercedez\_xb\_bank | 381 |
| br\_banco\_boleto\_tec\_xb\_bank | 383 |
| br\_banco\_toyota\_xb\_bank | 387 |
| br\_banco\_gm\_xb\_bank | 390 |
| br\_banco\_sulcredi\_ibiam\_xb\_bank | 391 |
| br\_banco\_alfa\_xb\_bank | 025 |
In this section:
Search results
--------------
No results found
* [Prev](bank-payout-united-states.html#idp237841)
* [Next](rendimento.html#idp237894)
---
# Rotating Your Plugin Keys
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Plugins](plugins.html)
* [Plugins and Add-Ons](plugins-and-add-ons.html)
* Rotating Your Plugin Keys
* [Prev](rapyd-payments-plugin-for-opencart.html#idp421869)
* [Next](rotating-your-plugin-keys.html#idp421894)
#### Rotating Your Plugin Keys
A guide to rotating your Plugin Keys in Client Portal
You can rotate your Plugin API Keys in the Client Portal if your Plugin API keys in sandbox or production were compromised, or if you wished to rotate the API keys regularly. You must have Owner permissions to rotate your plugin API keys.
For example, if you experienced a security breach where your plugin API keys had been exposed to the public, you can rotate your plugin API keys. This allows you to use new plugin API keys.
[##### How to Rotate Plugin API Keys](#idp421894_body)
1. Sign in as described in [Accessing the Client Portal](accessing-the-client-portal.html "Accessing the Client Portal")
and navigate to **Settings** > **Plugins**.
The **Plugins** page appears.

2. Select the desired plugin.
3. The Plugin details page appears.

4. Click the **Rotate API keys** button in the upper right corner.
5. The **Choose when to revoke the existing key** dialogue box appears.

6. Select the time frame when you would like to rotate your API Keys in the drop-down. The time frame ranges from Now to 7 Days.

7. Click **Next**.
8. The **Warning!** dialogue box appears.

### Updating API Keys
Make sure to update any script or program with the new API Keys, and accept Webhooks with either the new or previous API keys until the previous API keys are revoked. Not updating such scripts on time will prevent any payments that used the previous API keys.
9. Click the checkbox that says **I confirm rotating the API keys**.

10. Click **Next**.
The Two Factor Authentication dialogue box appears.

11. Enter your 6-digit SMS code.
12. Click **Submit**.
The confirmation window appears.

13. An email notification will inform you the API keys have been rotated, and state when the previous API keys expire. The notification will be sent to users who have permission to view the API Keys.
In this section:
Search results
--------------
No results found
* [Prev](rapyd-payments-plugin-for-opencart.html#idp421869)
* [Next](rotating-your-plugin-keys.html#idp421894)
---
# Payment Link Details
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Client Portal Guide](client-portal-guide.html)
* [Collect](collect.html)
* [Payment Links](payment-links-479256.html)
* Payment Link Details
* [Prev](creating-a-payment-link.html#idp254142)
* [Next](payment-link-details.html#idp254175)
##### Payment Link Details
View more details about your payments in Client Portal.
You can create a reusable link or a one-time link for customers. Reusable payment links can be used multiple times by different customers. One-time payment links are single use before they become inactive.
[###### Viewing Payment Link Details](#idp254175_body)
1. Sign in as described in [Accessing the Client Portal](accessing-the-client-portal.html "Accessing the Client Portal")
and navigate to **Collect** > **Payment Links** > **Reusable Links**.
2. The **Reusable links** page appears.

**Note**: You can navigate to **Collect** > **Payment Links** > **One time links** to view a table of your one time payment links.
3. Click on a payment link to view additional information.
4. The **Reusable payment link details** panel appears.

5. Click on the **See all details** link.
6. The **Payment links** details page appears.

7. From this page, you can view:
* Payment Link Status
* Payment Link Details
* Payments
* Customer Details
In this section:
Search results
--------------
No results found
* [Prev](creating-a-payment-link.html#idp254142)
* [Next](payment-link-details.html#idp254175)
---
# Changing a User's Role
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Client Portal Guide](client-portal-guide.html)
* [Users and Roles](users-and-roles.html)
* Changing a User's Role
* [Prev](creating-a-new-user-role.html#idp252071)
* [Next](changing-a-user-s-role.html#idp252114)
#### Changing a User's Role
You can change a team member's role on the **Members** page.
This procedure requires Owner or Administrator privileges.
### Change Account Owner Email Address
To change the email address of the owner of the Client Portal account, submit a ticket to support. See [Submitting a Support Ticket](submitting-a-support-ticket.html "Submitting a Support Ticket")
.
[##### How to Change a User's Role](#idp252114_body)
1. Sign in as described in [Accessing the Client Portal](accessing-the-client-portal.html "Accessing the Client Portal")
and navigate to **Settings** > **Team members & Roles** > **Members**.
The **Members** page appears.

2. Go the row of the team member whose role you want to change.
3. Click the **Edit user role** icon.

4. The **Edit user role** dialog box appears.

5. Tap the **Select role** drop-down list and select a different role.

6. Tap **Save**.
The team member's role is updated.
In this section:
Search results
--------------
No results found
* [Prev](creating-a-new-user-role.html#idp252071)
* [Next](changing-a-user-s-role.html#idp252114)
---
# Inviting a User
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Client Portal Guide](client-portal-guide.html)
* [Users and Roles](users-and-roles.html)
* Inviting a User
* [Prev](viewing-users.html#idp251993)
* [Next](inviting-a-user.html#idp252037)
#### Inviting a User
You can invite new users to the Client Portal from the Users page.
This procedure requires Owner, Administrator, or Editor privileges.
[##### How to Invite a User](#idp252037_body)
1. Sign in as described in [Signing in to the Client Portal](signing-in-to-the-client-portal.html "Signing In to the Client Portal")
and navigate to **Settings** > **Team members & Roles** > **Members**.
The **Members** section appears.

2. Tap the **Invite members** button at the top right of the screen. The **Invite team members** dialog box appears.

3. Enter the details of the new team and click **Invite**.
Rapyd sends an invitation to the email address you provided.
**Note**: Click **\+ Add user** to invite multiple users.
In this section:
Search results
--------------
No results found
* [Prev](viewing-users.html#idp251993)
* [Next](inviting-a-user.html#idp252037)
---
# Changing Your MFA Preference
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Client Portal Guide](client-portal-guide.html)
* [My Account](my-account.html)
* Changing Your MFA Preference
* [Prev](multi-wallet-client-account.html#idp250683)
* [Next](changing-your-mfa-preference.html#idp250715)
#### Changing Your MFA Preference
Change your MFA login method.
Your account login uses MFA for verification. You can switch between SMS text, an authenticator application or Whatsapp.
**Note**: The preference settings will affect your MFA user login.
[##### How to Change Your MFA Login Preference](#idp250715_body)
To view your user account MFA Login details:
1. Sign in to the Client Portal as described in [Signing in to the Client Portal](signing-in-to-the-client-portal.html "Signing In to the Client Portal")
.
2. Navigate to your username at the top right corner > select the **User profile** icon in the drop-down.

The **User profile** page appears.

3. Under Secure Login, select **Change Method**.
4. The **Secure Login** dialog box appears.

5. Select Authenticator app, SMS Authentication, or Whatsapp Authentication from the drop-down.

6. Click **Save**.
7. On your mobile device, open your authenticator app and select system settings to scan QR code. The 6 digit number generator should appear, titled Rapyd - Client Portal (your email).
**Note**: If you selected **SMS authentication** you should receive an SMS message with the 6 digit code. If you selected **Whatsapp Authentication** you will receive your 6 digit code via the app.
8. Type the 6 digit code in the dialog to verify your phone number.
9. Click **Verify Code** to change your MFA login method.

In this section:
Search results
--------------
No results found
* [Prev](multi-wallet-client-account.html#idp250683)
* [Next](changing-your-mfa-preference.html#idp250715)
---
# Downloading Your Proof of Account
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Client Portal Guide](client-portal-guide.html)
* [My Account](my-account.html)
* Downloading Your Proof of Account
* [Prev](downloading-your-account-statement.html#idp250198)
* [Next](downloading-your-proof-of-account.html#idp250295)
#### Downloading Your Proof of Account
You can download a proof of account file for a Rapyd wallet account. The file data is generated within a custom time period. The file is in PDF format.
This procedure requires Owner, Administrator, or Editor privileges.
[##### How to Download a Proof of Account File](#idp250295_body)
1. Sign in as described in Accessing the Client Portal and navigate to **My Account** > **Account management**.
The **Account Management** page appears.

2. Tap the **Download proof of account** button in the middle left corner of the upper banner.
The **Download proof of account** dialog box appears.

3. Select the Rapyd Wallet account.
4. Select the currency.
5. Select **Current Balance**.
6. Click **Download File**.
### Custom Date Ranges
* You can select a custom date range when downloading your account statement to capture more precise information about your account.
* Select the **Choose Manually** tab under **Closing Balance Date**.
* Choose your date range for your closing balance. The date range can be up to one year.
* The closing balance will be the wallet balance at the last day of the selected month.

7. Tap **Download File**.
* A pop-up message confirms that your report is being processed. When your report is ready, Rapyd sends you a notification by email.
* In the email message, tap **Get File**.
* The file is downloaded to the **Downloads** folder on your local computer.

In this section:
Search results
--------------
No results found
* [Prev](downloading-your-account-statement.html#idp250198)
* [Next](downloading-your-proof-of-account.html#idp250295)
---
# Downloading Your Account Statement
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Client Portal Guide](client-portal-guide.html)
* [My Account](my-account.html)
* Downloading Your Account Statement
* [Prev](managing-your-user-profile.html#idp250124)
* [Next](downloading-your-account-statement.html#idp250153)
#### Downloading Your Account Statement
You can download a report of your Account Statement for a Rapyd wallet account. The report is in PDF format.
This procedure requires Owner, Administrator, or Editor privileges.
[##### How to Download Your Account Statement](#idp250153_body)
1. Sign in as described in Accessing the Client Portal and navigate to **My Account** > **Account management**.
The **Account management** page appears.

2. Tap the **Download account statement** button in the middle right corner of the upper banner.
The **Download account statement** dialog box appears.

3. Select the Rapyd Wallet account.
4. Select the currency.
5. Select a day or range of dates.
**Note**: Select the **use default** link to use the default date range of 1 year.
6. Tap **Download**.
* A pop-up message confirms that your report is being processed. When your report is ready, Rapyd sends you a notification by email.
* In the email message, tap **Get File**.
* The file is downloaded to the **Downloads** folder on your local computer.

[##### Description of Fields](#idp250198_body)
The following table describes the fields in the Account Statement Report:
| Field | Description |
| --- | --- |
| Merchant Name | The name of the merchant associated with the account. |
| Merchant Address | The address of the merchant associated with the account. |
| Date Range Selected | The range of dates selected for the data set of the report. |
| Currency Selected | The currency chosen for the report. |
| Closing Balance | The final balance of the wallet for the time interval of the report. |
| Created At | The date and time the transaction was created. |
| Completed At | The date and time the transaction amount was deducted from the account balance. |
| Description | Indicates a description of the balance activity. One of the following:
* Payment - The reference ID or description of the payment created by the merchant.
* Payout - The reference ID, statement descriptor, or description of the payout created by the merchant.
* Bank Transfer - The sender name.
* Issued Card Transaction - Point of Sale (POS) name and location. |
| Amount Received | The amount of funds received into the wallet. |
| Amount Sent | The amount of funds sent out of the wallet. |
| Direction | The direction of the flow of funds. One of the following:
* In
* Out |
| Exchange Rate | The exchange rate associated with the payments, payouts, bank transfer, or issued card authorization. |
| Balance After Transaction | The balance of the wallet after each transaction listed in the report. |
In this section:
Search results
--------------
No results found
* [Prev](managing-your-user-profile.html#idp250124)
* [Next](downloading-your-account-statement.html#idp250153)
---
# Creating a Virtual Account
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Client Portal Guide](client-portal-guide.html)
* [Virtual Accounts](virtual-accounts-410712.html)
* Creating a Virtual Account
* [Prev](virtual-accounts-410712.html#idp261771)
* [Next](creating-a-virtual-account.html#idp261782)
#### Creating a Virtual Account
You can create multiple Virtual Accounts. Your company can use Virtual Accounts to collect, hold, and move funds.
You must have Owner or Administrator privileges to create a Virtual Account.
[##### How to Add a Virtual Account](#idp261782_body)
### Activate Your Virtual Account
To successfully create your first Virtual Account, [Contact Support](mailto:https://support@rapyd.net)
for your request.
To view a virtual account:
1. Sign in to Client Portal as described in [Signing in to the Client Portal](signing-in-to-the-client-portal.html "Signing In to the Client Portal")
and navigate to **My Account** > **Account management**.
The **Account management** page appears.

2. To add your virtual account, tap **\+ Create virtual account** in the **Virtual Accounts** section.

3. The **Add virtual account** window appears.
4. Enter the account name.

**Note**: Your account will need to be activated to successfully create a Virtual Account.
5. Click **Next**.

6. Select the country for your virtual account in the drop-down menu.
7. Select the **requested currency** from the drop-down menu.
8. Click **Create**.
### Requested Currencies for Virtual Accounts
1. The funds transferred to Virtual Accounts can now be automatically converted using FX (Foreign Exchange) into a different currency. All supported currencies can be converted with FX.
2. An FX conversion fee will be applied during the transfer.
3. Selecting a requested currency has no impact on the currencies the Virtual Account can receive.
[##### Editing Requested Currencies for Virtual Accounts](#idp261840_body)
The funds transferred to a Virtual Account can be converted using FX through the requested currency. The requested currency is what the funds will be converted into during the transfer. The requested currency can be edited for existing Virtual Accounts.
To edit the requested currency:
1. Sign in as described in [Accessing the Client Portal](accessing-the-client-portal.html "Accessing the Client Portal")
and navigate to **My Account** > **Account management**.
The **Account management** page appears.
2. Hover over a Virtual IBAN row in the Virtual Accounts section.
* (Optional): Click on the **View details** icon.
* (Optional): The Virtual Account details panel appears.

* (Optional): Click the **Update requested currency** link. Skip to Step 4.
3. Click the **Update requested currency** icon.

4. The **Update requested currency** window appears.

5. Select the currency from the drop-down menu.
6. Click **Update**.
In this section:
Search results
--------------
No results found
* [Prev](virtual-accounts-410712.html#idp261771)
* [Next](creating-a-virtual-account.html#idp261782)
---
# Approving Payouts
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Client Portal Guide](client-portal-guide.html)
* [Disburse](disburse.html)
* Approving Payouts
* [Prev](viewing-payout-details.html#idp257875)
* [Next](approving-payouts.html#idp257937)
#### Approving Payouts
Approve a payout using the Client Portal.
You can approve a payout using the Client Portal. A user linked to your account can submit a payout. The Owner or Administrator of the account can then review the payout and approve it. Users that have a custom role with that permission can also approve payouts.
### User Permissions
This procedure requires **Owner** or **Administrator** privileges to approve payouts. The linked user must have the role of **Editor** or a custom role to submit payouts for approval.
A user role can have the following permissions for payouts: **approve only**, **submit only**, or **both**. See [Creating a New User Role](creating-a-new-user-role.html "Creating a New User Role")
for more information.
[##### Submitting a Payout for Approval](#idp257937_body)
**Note**: For more detailed information about how to create a payout, see [Create a Payout](create-a-payout.html "Create a Payout")
.
1. Sign in as described in [Accessing the Client Portal](accessing-the-client-portal.html "Accessing the Client Portal")
and navigate to **Disburse** > **Payouts** > **Create Payout**.

2. The **Payout Details** page appears.

3. Enter the required fields for the payout.
4. Click **Next**.
5. The **Payout Method** page appears.

6. Select the payout method type and tap **Next**.
7. The **Beneficiary details** page appears.

8. Enter the beneficiary details and sender details. Tap **Next**.
9. The **Confirmation** page appears.

10. Check the **I confirm the payout details above** checkbox.
11. Tap the **Submit for approval** button.
12. The success window appears.

13. The Payout appears under **Disburse** > **Payouts** > **Payout Approval** with a status of **Pending**.
[##### Approving the Payout](#idp258004_body)
1. Sign in as described in [Accessing the Client Portal](accessing-the-client-portal.html "Accessing the Client Portal")
and navigate to **Disburse** > **Payouts** > **Payout approval**.
2. Select the row of the payout you would like to approve.

3. The payout review panel appears.

4. Tap **Approve payout**.
**Note**: You can subscribe to receive a notification when a payout is submitted as a draft for approval. See [Viewing Notifications](viewing-notifications.html "Viewing Notifications")
for more details.
In this section:
Search results
--------------
No results found
* [Prev](viewing-payout-details.html#idp257875)
* [Next](approving-payouts.html#idp257937)
---
# Bank Payout Ukraine
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Product Guide](product-guide.html)
* [Payout Method Types](payout-method-types.html)
* [EMEA](emea-401604.html)
* Bank Payout Ukraine
* [Prev](bank-payout-bulgaria.html#idp241173)
* [Next](bank-payout-ukraine.html#idp241224)
##### Bank Payout Ukraine
Disburse funds directly to a bank account. | `Enterprise`
**ua\_local\_bank** is a new bank payout method type used for payouts in Ukraine. A sender can disburse funds into a beneficiary’s bank account in Ukraine. This payout method supports local bank transfers and allows the beneficiary to be paid in Ukraine Hryvnia (UAH).
The benefits for the user include the ability to create cross-border payouts and disburse funds into Ukrainian bank accounts.
[###### Finding Required Fields for the Payout Method Type](#idp241224_body)
You need to find the required fields for each payout method type.
For that, you'll use [Get Payout Required Fields](get-payout-required-fields.html "Get Payout Required Fields")
. Enter **ua\_local\_bank** as the value for the `payout_method_type` path parameter.
### Mass Payouts Supported
Mass payouts can be completed with **ua\_local\_bank** using a mass payouts file via SFTP (SSH FIle Transfer Protocol). See [Mass Payouts Overview](mass-payouts-overview.html "Mass Payouts Overview")
for more information about mass payouts.
[###### Requesting a Payout](#idp241236_body)
Use [Create Payout](create-payout.html "Create Payout")
with the following parameters:
Create Payout Request Parameters
| | |
| --- | --- |
| **Body Parameter** | **Description** |
| ewallet | Enter the wallet 'id' that you received when you created the company wallet in your sandbox. |
| payout\_amount | Enter 100 as the amount received by the beneficiary. |
| payout\_method\_type | Enter **ua\_local\_bank** as the payout method type. |
| sender\_currency | Enter **USD** as the code for United States Dollar, the sender's currency. |
| sender\_country | Enter **US** as the code for the United States, the sender's country. |
| beneficiary\_country | Enter **UA** as the code for Ukraine, the beneficiary's country. |
| payout\_currency | Enter **UAH** as the code for Ukraine Hryvnia, the currency received by the beneficiary. |
| sender\_entity\_type | Enter ‘individual’ as the type of entity for the sender. |
| beneficiary\_entity\_type | Enter ‘individual’ as the type of entity for the beneficiary. |
| beneficiary | Enter a 'beneficiary' object that has the following fields:
* **first\_name**
* **last\_name**
* **iban**
* **phone\_number** |
| sender | Enter a 'sender' object that has the following fields:
* **company\_name** - company
* **identification\_type** - company
* **identification\_value** - individual or company
* **first\_name** - individual
* **last\_name** - individual
* **address** - individual or company
* **city** - individual or company
* **phone\_number** - individual or company |
| description | Enter 'salary payout - wallet to bank account' as the description of the payout transaction. |
[###### Create Payout Response](#idp241356_body)
[Create Payout](create-payout.html "Create Payout")
describes the fields in the response.
[###### Local Bank Payout Ukraine Details](#idp241360_body)
| | |
| --- | --- |
| **Details** | **Description** |
| Payout Method Category | bank |
| Payout Request String | POMT = ua\_local\_bank |
| Country | Ukraine |
| Sender Currency | ISK, USD, GBP, EUR, SGD, HKD, AUD |
| Transaction Limits | N/A |
| Settlement Timeframe | Same day |
In this section:
Search results
--------------
No results found
* [Prev](bank-payout-bulgaria.html#idp241173)
* [Next](bank-payout-ukraine.html#idp241224)
---
# Failed Payments Report
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Client Portal Guide](client-portal-guide.html)
* [Reports](reports-367106.html)
* Failed Payments Report
* [Prev](downloading-a-financial-report.html#idp264657)
* [Next](failed-payments-report.html#idp264681)
#### Failed Payments Report
Download Custom Reports in Client Portal.
The Failed Payments report contains the data for all the failed payments associated with your Client Portal account. The generated report is in CSV format.
[##### How to Download a Failed Payments Report](#idp264681_body)
1. Sign in as described in [Accessing the Client Portal](accessing-the-client-portal.html "Accessing the Client Portal")
and navigate to **Reports** > **Custom Reports**.
The **Custom reports** page appears.

2. Scroll down to the **Failed Payment Report**.
3. Click the **Generate report** button on the right side of the row.

4. The **Generate failed payments report** dialog box appears.

5. Select the date range for the report.
**Note**: The maximum period of time you can select is 31 days.
6. Tap **Generate report**.
7. The success window appears.

8. You will receive an email containing the report. Download the report to your computer.
In this section:
Search results
--------------
No results found
* [Prev](downloading-a-financial-report.html#idp264657)
* [Next](failed-payments-report.html#idp264681)
---
# Creating a Wallet
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Client Portal Guide](client-portal-guide.html)
* [Wallets](wallets.html)
* Creating a Wallet
* [Prev](viewing-details-of-a-wallet.html#idp259250)
* [Next](creating-a-wallet.html#idp259350)
#### Creating a Wallet
You can create a wallet within the Client Portal for a business or personal contact.
[##### How to Create a Wallet](#idp259350_body)
1. Sign in as described in [Accessing the Client Portal](accessing-the-client-portal.html "Accessing the Client Portal")
and navigate to **Wallets** > **Wallets**.
The **Wallets** page appears.

2. Select **Create Wallet**.
The **Create wallet** menu appears.

3. Select **Business wallet** or **Personal wallet**.
The corresponding dialogue box appears.
###### Creating a Personal Wallet
1. Complete the fields in the **Wallet Details** section:
* First Name - First name of the primary wallet contact.
* Last name - Last name of the primary wallet contact.
* Email - email of the wallet contact.
* Country Code - Short numeric code to identify a specific country used for communications.
* Mobile Number - phone number of the contact.
* Reference ID - The unique identifier assigned by the merchant.
* Contact Reference ID - Unique identifier of the contact.
* Country - Country of the contact.
* Date of Birth - Date of birth of the contact.
* Gender - Gender of the contact.
* Nationality - Nationality of the contact.
* Identification Type - Document verifying the identity of the contact.
* Identification Number - Number associated with your identification document (license, passport, visa, etc.)

2. Select **Contact address**.
The contact address fields appear.
3. Complete the contact address fields.
**Note**: Contact Required Fields - The Name, Country, and Street Address 1 are required fields when creating a Wallet in the Client Portal.
4. Click **Create Wallet**.
The create wallet dialogue box appears.

###### Creating a Business Wallet
1. Complete the fields in the **Wallet Details** section:
* Company name - Name of the company
* Email - email of the wallet contact.
* Country Code - Short numeric code to identify a specific country used for communications.
* Mobile Number - phone number of the contact.
* Reference ID - the unique identifier assigned by the merchant.

2. (Optional) Complete the fields in the **Business Details** section:
* Name - name of the business.
* Registration number - unique number associated with the company registration.
* Date of establishment - date of the company registration.
* Entity type - type of business entity.
3. Complete the fields in the **Contact Details** section:
* Contact Reference ID - Unique identifier of the contact.
* First Name - First name of the primary business contact.
* Last name - Last name of the primary business contact.
* Email - email of the primary business contact.
* Country - Country of the contact.
* Date of Birth - Date of birth of the contact.
* Nationality - Nationality of the contact.
* Identification Type - Document verifying the identity of the contact.
* Identification Number - Number associated with your identification document (license, passport, visa, etc.)
* Gender - Gender of the contact.
4. Select **Contact Address**. The contact address fields appear.
**Note**: Business Contact Required Fields - The Name, Country, and Street Address 1 are required fields when creating a Wallet in the Client Portal.
5. Complete the contact address fields.
6. Click **Create Wallet**.
The create wallet dialogue box appears.

In this section:
Search results
--------------
No results found
* [Prev](viewing-details-of-a-wallet.html#idp259250)
* [Next](creating-a-wallet.html#idp259350)
---
# Order Cards via Client Portal
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Client Portal Guide](client-portal-guide.html)
* [Issuing](issuing.html)
* Order Cards via Client Portal
* [Prev](downloading-an-issued-cards-report.html#idp260976)
* [Next](order-cards-via-client-portal.html#idp260990)
#### Order Cards via Client Portal
Rapyd enables clients that use Rapyd Issuing to order a new batch of physical cards via Client Portal. Once you are approved for Rapyd Issuing, you can order cards by going to **Issuing** > **Card Orders**.
### KYB Approval for Rapyd Issuing: Cards
Before requesting cards, your client account needs KYB approval (account activation) for Rapyd Issuing. Rapyd Issuing is supported in specific countries. Contact your Rapyd sales representative for details.
[##### Order Cards via Client Portal Workflow](#idp260990_body)
1. Navigate to **Issuing** > **Card orders**.
The **Card orders** page appears.

2. To begin ordering cards, tap the **Order Cards** button.
The **Order cards** dialog box appears.
3. Select the number of cards to be ordered and the card program. Tap **Next**.

4. Enter the delivery address for the order. Tap **Next**.

5. Enter the information for the contact person.

6. Complete the required fields and select **Order cards**.
7. The success window appears.

8. The ordered cards should appear in the top row of the **Card orders** page.
### Prerequisite: Card Program
When requesting cards the user must include the card program from which they want to order a card. Different card programs will be issued for each country. To request a card program, contact your Rapyd sales representative.
9. Select the row of your card order.
The **Card order details** panel appears.

Possible statuses of card order include:
* Created
* Pending
* Out for delivery
* Delivered
* Active
* Rejected
In this section:
Search results
--------------
No results found
* [Prev](downloading-an-issued-cards-report.html#idp260976)
* [Next](order-cards-via-client-portal.html#idp260990)
---
# Viewing Subscription Invoice Details
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Client Portal Guide](client-portal-guide.html)
* [Collect](collect.html)
* [Subscriptions](subscriptions-479259.html)
* Viewing Subscription Invoice Details
* [Prev](listing-subscription-invoices.html#idp256305)
* [Next](viewing-subscription-invoice-details.html#idp256359)
##### Viewing Subscription Invoice Details
You can view details of a specific subscription invoice. `beta`
This feature is in **closed beta**. You can contact the Rapyd Support team if you wish to join the closed beta program.
[###### How to View Subscription Invoice Details](#idp256359_body)
1. Sign in as described in [Accessing the Client Portal](accessing-the-client-portal.html "Accessing the Client Portal")
and navigate to **Collect** > **Subscriptions** > **Invoices** .
The **Subscription Invoices** page appears.
2. Hover over the row that contains the subscription you want to view and then click on the row.

3. The following panel appears:

For a description of the information displayed, see [Listing Subscription Invoices](listing-subscription-invoices.html "Listing Subscription Invoices")
.
[###### Updating a Subscription Invoice Payment Method](#idp256382_body)
1. To update the payment method for a subscription, click **Update Card** at the bottom of the Subscription Invoice Details panel.
2. The **Add Card** window appears.

3. Update the customer’s payment method information.
4. Click **Submit**.
[###### Request Card Details](#idp256399_body)
You request card details by generating a hosted page to copy the link and send to a customer.
1. In the **Invoice Details** Panel, click **Request Card Details** at the bottom.
The **Request card details** dialogue box appears.
2. Select the designated country for the customer.
3. Click **Create hosted page**.
The **Card tokenization page created** dialogue box appears.
4. Copy the URL to send it to the customer.

[###### Downloading a Subscription Invoice PDF](#idp256421_body)
1. Hover over the row that contains the subscription you want to view.
2. Click the row.
3. On the details panel, select **Download Invoice**.
**Note**: You can also select **Download Invoice** from the full Subscription Details page. The invoice will download to your designated downloads folder.
4. Click on the downloaded file on your local drive to open.
The PDF invoice will have the following information:
* Business name - matches your legal business name listed in your Client Portal account under **Settings** > **Account Details**.
* Business address - Lists a designated business address including address line, city, state/territory, country and zip
**Note**: A merchant can only have 1 listed address.
* Issued to - Customer name the invoice was billed to
* Status - status of the invoice from paid, draft, or open.
* Billing Period - The date range that the customer is billed for.
* Plan - the name of the subscription pricing plan.
* Payment Method with last 4 digits - Format of Visa \*\*\*\*1111
* Date paid - date of the transaction
* Quantity - amount of subscription plans the invoice includes
* Amount - total payment with currency

In this section:
Search results
--------------
No results found
* [Prev](listing-subscription-invoices.html#idp256305)
* [Next](viewing-subscription-invoice-details.html#idp256359)
---
# APAC
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Product Guide](product-guide.html)
* [Payout Method Types](payout-method-types.html)
* APAC
* [Prev](rendimento.html#idp237894)
* [Next](apac-394671.html#idp238268)
#### APAC
Payout methods for the Asia-Pacific region.
[##### APAC Supported Countries](#idp238268_body)
Australia, Hong Kong, India, Indonesia, Japan, Malaysia, New Zealand, Philippines, Singapore, South Korea, Taiwan, Thailand, Vietnam.
Asia Pacific Payout Methods
en/bank-payout-malaysia.html
Bank Payout Malaysia
A popular bank payout used in Malaysia.
en/bank-payout-japan.html
Bank Payout Japan
A popular bank payout used in Japan.
en/bank-payout-indonesia.html
Bank Payout Indonesia
A popular bank payout used in Indonesia.
In this section:
Search results
--------------
No results found
* [Prev](rendimento.html#idp237894)
* [Next](apac-394671.html#idp238268)
---
# Create a Sender
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Client Portal Guide](client-portal-guide.html)
* [Disburse](disburse.html)
* Create a Sender
* [Prev](listing-senders.html#idp258457)
* [Next](create-a-sender.html#idp258564)
#### Create a Sender
Create a Sender using the Client Portal.
You can create a sender right from the Client Portal by logging in and going to **Disburse** > **Senders** > **Create Sender**.
**Note**: This procedure requires Owner or Administrator privileges.
[##### How to Create a Sender](#idp258564_body)
1. Sign in as described in [Accessing the Client Portal](accessing-the-client-portal.html "Accessing the Client Portal")
and navigate to **Disburse** > **Senders**.
The Senders page appears.

2. Click **Create sender**.
The Create sender dialog box appears.

###### Entity Type
1. Complete the Entity type by choosing Individual or Business.
2. Select the Country and Currency of the Sender.
###### Beneficiary Entity Type
1. Complete the Beneficiary entity type that would receive from the sender as an Individual or Business.
2. Select the Beneficiary country and currency.
3. Select the payout category.
**Note**: The payout category is the method that the beneficiary would like to receive their funds.
4. Click **Next**.
###### Sender Details
**Note**: The sender details will vary according to the required fields of the payout method.
Complete the sender details including the following:
* First Name - (Sender is an individual)
* Last name - (Sender is an individual)
* Company Name - (Sender is a business)
* Reference ID
* Date of Birth
* Country Code & Mobile Number
* Address
* City
* Post Code
The Sender Created dialogue box appears.
### View Sender
On the sender created dialogue box, tap View Sender to view the specific sender details.
In this section:
Search results
--------------
No results found
* [Prev](listing-senders.html#idp258457)
* [Next](create-a-sender.html#idp258564)
---
# Create a Beneficiary
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Client Portal Guide](client-portal-guide.html)
* [Disburse](disburse.html)
* Create a Beneficiary
* [Prev](listing-beneficiaries.html#idp258035)
* [Next](create-a-beneficiary.html#idp258153)
#### Create a Beneficiary
Create a Beneficiary using the Client Portal.
You can create a beneficiary right from the Client Portal by logging in and going to **Disburse** > **Beneficiaries** > **Create Beneficiary**. A single beneficiary can be used for multiple payouts.
**Note**: This procedure requires Owner or Administrator privileges.
[##### How to Create a Beneficiary](#idp258153_body)
1. Sign in as described in [Accessing the Client Portal](accessing-the-client-portal.html "Accessing the Client Portal")
and navigate to **Disburse** > **Beneficiaries**.
The Beneficiaries page appears.

2. Click **Create beneficiary**.
The Create new beneficiary dialog box appears.

###### Entity Type
1. Complete the Entity type by choosing Individual or Business.
2. Select the Country and Currency of the Beneficiary.
###### Sender Entity Type
1. Complete the Sender entity type as an Individual or Business that would payout to the beneficiary.
2. Select the Sender country and currency.
3. Select the payout category.
4. Choose the payout method type sent to the beneficiary.
**Note**: The payout method is relevant for the sender to send the payout to the beneficiary.
5. Click **Next**.
###### Beneficiary Details
**Note**: The beneficiary details will vary according to the required fields of the payout method.
Complete the beneficiary details including the following:
* First Name - (Beneficiary is an individual)
* Last name - (Beneficiary is an individual)
* Company Name - (Beneficiary is a business)
* Account Number
* Sort Code
* Reference ID
**Note**: The Reference ID is defined by the merchant to identify their beneficiaries.

The Beneficiary Created dialogue box appears.
### View Beneficiary
On the beneficiary created dialogue box, tap View Beneficiary to view the specific beneficiary details.
In this section:
Search results
--------------
No results found
* [Prev](listing-beneficiaries.html#idp258035)
* [Next](create-a-beneficiary.html#idp258153)
---
# SWIFT Payout
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Product Guide](product-guide.html)
* [Payout Method Types](payout-method-types.html)
* SWIFT Payout
* [Prev](card-payout.html#idp235730)
* [Next](swift-payout.html#idp235920)
#### SWIFT Payout
A fast way to move funds to a bank account using SWIFT | `Enterprise`
A Payout can send money from Rapyd to a beneficiary. Use the Swift Transfer payout method, or **xx\_swift\_bank** to wire transfer funds to a beneficiary with an international bank account in the SWIFT network.
Common use cases may include:
* Wire payout to an international employee's bank account.
* Wire payout to a supplier in another country (B2B).
[##### What is Regex?](#idp235920_body)
Regex, is a regular expression that defines the format when `type` is **string**. Regex can manage and match characters in strings. Rapyd employs a unique variant of regex. Note the following differences:
* A single backslash is treated as matching a backslash as an ordinary character.
* A backslash followed by an alphabetic character matches as a string of two characters.
* To match a special character such as **\\n**, you must write **\\\\n**.
[##### Payout to Bank Account Workflow](#idp235934_body)
Using the Wire payment method (**xx\_swift\_bank**) and the corresponding required fields that beneficiaries fill out is described under How it Works.
### Note
A Payout requires a sender and a beneficiary as described in [Reusing Beneficiary or Sender](reusing-beneficiary-or-sender.html "Reusing Beneficiary or Sender")
.
###### Step 1 - Getting Payout Information

1. You request to List Payout Methods by Country to get supported payout methods.
2. Rapyd returns the list of supported payout types.
3. You call Get Payout Method Required Fields to get required fields to be completed.
4. Rapyd returns the list of required fields to be passed for processing.
###### Step 2 - Processing the Payout

1. You call Create Payout and pass required fields.
2. Rapyd processes the payout to the bank—and sends a response.
3. Bank credits the beneficiary’s account.
4. Rapyd sends notification of completed Payout.
[##### How SWIFT Payouts Works](#idp235969_body)
### Prerequisites
To run the examples of this use case, you must create the following ID in your own sandbox:
* ewallet - Run [Creating a Rapyd Wallet](creating-a-rapyd-wallet.html "Creating a Rapyd Wallet")
for the company wallet. Use the 'id' you get in the response.
[###### Finding Payout Method Types](#idp235978_body)
For the payout page on your website, you need to find payout method types that match your criteria, such as the payout country and currency.
For that, you'll use [List Payout Method Types](list-payout-method-types.html "List Payout Method Types")
with the following parameters:
Description of Parameters
| | |
| --- | --- |
| Query Parameter | Description |
| category | Enter bank as the category of the payout method. |
| beneficiary\_country | Enter **GB** as the code for the United Kingdom, the beneficiary's country. |
| payout\_currency | Enter **GBP** as the code for British Pound sterling, the currency received by the beneficiary. |
###### List Payout Method Types Request
You ask for a list of all available bank payout method types for transfers in the SWIFT network using **GBP** .
* * Request
* // Request URL: GET https://sandboxapi.rapyd.net/v1/payout\_methods?beneficiary\_country=GB&payout\_currency=GBP
// Message body absent
###### List Payout Method Types Response
Let's take a look at the response.
A real response usually lists many payout methods.
* * Response
* {
"payout\_method\_type": "xx\_swift\_bank",
"name": "Global SWIFT",
"is\_cancelable": 0,
"is\_expirable": 0,
"is\_location\_specific": 0,
"status": 1,
"image": "/checkout/xx\_swift\_bank.png",
"category": "bank",
"beneficiary\_country": "GB",
"sender\_country": "\*",
"payout\_currencies": \[\
"GBP"\
\],
"sender\_entity\_types": \[\
"company"\
\],
"beneficiary\_entity\_types": \[\
"company",\
"individual"\
\],
"amount\_range\_per\_currency": \[\
{\
"maximum\_amount": null,\
"minimum\_amount": null,\
"payout\_currency": "GBP"\
}\
\],
"minimum\_expiration\_seconds": null,
"maximum\_expiration\_seconds": null,
"sender\_currencies": \[\
"USD",\
"SGD",\
"SEK",\
"NOK",\
"ISK",\
"HKD",\
"GBP",\
"EUR",\
"DKK",\
"CHF",\
"CAD",\
"AUD"\
\],
"estimated\_time\_of\_arrival": "An estimated receipt time is not yet available for this payout method"
},
[###### Sender Currencies](#idp236035_body)
The **xx\_swift\_bank** payout method has a list of supported sender currencies. When the sender disburses funds to the beneficiary, they can use a number of different supported currencies.
The beneficiary can then accept the funds in the same currency, or in a different currency. If a beneficiary accepts the funds in a different currency from the sender, then FX (foreign exchange) will convert the funds to the desired currency.
The sender currencies for the payout method are listed in the List Payout Method Types response above.
**Note**: If the payout is created with an unsupported sender currency, the payout will fail.
Supported Sender Currencies SWIFT
| | |
| --- | --- |
| USD | GBP |
| SGD | EUR |
| SEK | DKK |
| NOK | CHF |
| ISK | CAD |
| HKD | NZD |
| AUD | |
[###### Finding Required Fields for the Payout Method Type](#idp236084_body)
You need to find the required fields for the **xx\_swift\_bank** payout method type.
For that, you'll use [Get Payout Required Fields](get-payout-required-fields.html "Get Payout Required Fields")
with the following parameters:
Description of Path Parameters
| | |
| --- | --- |
| Path Parameter | Description |
| payout\_method\_type | Enter **xx\_swift\_bank** as the payout method type. |
Description of Query Parameters
| | |
| --- | --- |
| Query Parameter | Description |
| sender\_country | Enter **FR** as the code for France, the sender's country. |
| sender\_currency | Enter **EUR** as the code for Euros, the sender's currency. |
| beneficiary\_country | Enter **GB** as the code for the United Kingdom,, the beneficiary's country. |
| payout\_currency | Enter **GBP** as the code for British Pound sterling, the currency received by the beneficiary. |
| sender\_entity\_type | Enter 'company' as the type of entity for the sender. |
| beneficiary\_entity\_type | Enter 'individual' as the type of entity for the beneficiary. |
| payout\_amount | Enter 3000 as the amount received by the beneficiary. |
###### Get Payout Required Fields Request
You ask for the set of required fields for the **xx\_swift\_bank** payout method type.
* * Request
* // Request URL: GET https://sandboxapi.rapyd.net/v1/payout\_methods/xx\_swift\_bank/required\_fields?sender\_country=FR&sender\_currency=EUR&beneficiary\_country=GB&payout\_currency=GBP&sender\_entity\_type=company&beneficiary\_entity\_type=individual&payout\_amount=3000
// Message body absent
###### Get Payout Required Fields Response
Let's take a look at the response.
* * Response
* "status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "6f8a3c1d-504f-4b9d-9b60-a83164c3053f"
},
"data": {
"payout\_method\_type": "xx\_swift\_bank",
"sender\_currency": "EUR",
"sender\_country": "\*",
"sender\_entity\_type": "company",
"beneficiary\_country": "GB",
"payout\_currency": "GBP",
"beneficiary\_entity\_type": "individual",
"is\_cancelable": 0,
"is\_location\_specific": 0,
"is\_expirable": 0,
"minimum\_expiration\_seconds": null,
"maximum\_expiration\_seconds": null,
"is\_online": null,
"image": "/checkout/xx\_swift\_bank.png",
"status": 1,
"beneficiary\_required\_fields": \[\
{\
"name": "first\_name",\
"regex": "^.{1,20}",\
"is\_required": true,\
"type": "string",\
"description": "First name + Last name must not exceed 35 characters"\
},\
{\
"name": "last\_name",\
"regex": "^.{1,15}",\
"is\_required": true,\
"type": "string",\
"description": "First name + Last name must not exceed 35 characters"\
},\
{\
"name": "address",\
"regex": "^.{1,35}",\
"is\_required": true,\
"type": "string",\
"description": "Beneficiary street name ; building number"\
},\
{\
"name": "city",\
"regex": "^.{1,25}",\
"is\_required": true,\
"type": "string",\
"description": "The combined length of city+state+country+postcode must not exceed 32 characters"\
},\
{\
"name": "state",\
"regex": "^.{1,15}",\
"is\_required": false,\
"type": "string",\
"description": "The combined length of city+state+country+postcode must not exceed 32 characters"\
},\
{\
"name": "country",\
"regex": "^\[A-Z\]{2}$",\
"is\_required": true,\
"type": "string",\
"description": "The combined length of city+state+country+postcode must not exceed 32 characters"\
},\
{\
"name": "postcode",\
"regex": "^.{1,10}",\
"is\_required": false,\
"type": "string",\
"description": "The combined length of city+state+country+postcode must not exceed 32 characters"\
},\
{\
"name": "account\_number",\
"regex": "^.{1,34}$",\
"is\_required": true,\
"type": "string"\
},\
{\
"name": "bic\_swift",\
"regex": "^.{8,11}$",\
"is\_required": true,\
"type": "string"\
}\
\],
"sender\_required\_fields": \[\
{\
"name": "company\_name",\
"regex": "^.{1,35}",\
"is\_required": true,\
"type": "string"\
},\
{\
"name": "address",\
"regex": "^.{1,35}",\
"is\_required": true,\
"type": "string",\
"description": "Beneficiary street name ; building number"\
},\
{\
"name": "city",\
"regex": "^.{1,25}",\
"is\_required": true,\
"type": "string",\
"description": "The combined length of city+state+country+postcode must not exceed 32 characters"\
},\
{\
"name": "state",\
"regex": "^.{1,15}",\
"is\_required": false,\
"type": "string",\
"description": "The combined length of city+state+country+postcode must not exceed 32 characters"\
},\
{\
"name": "country",\
"regex": "^\[A-Z\]{2}$",\
"is\_required": true,\
"type": "string",\
"description": "The combined length of city+state+country+postcode must not exceed 32 characters"\
},\
{\
"name": "postcode",\
"regex": "^.{1,10}",\
"is\_required": false,\
"type": "string",\
"description": "The combined length of city+state+country+postcode must not exceed 32 characters"\
},\
{\
"name": "purpose\_code",\
"regex": "investment\_income|salary|insurance\_payments|computer\_services|educational\_services|payment\_of\_goods|payment\_of\_services|Inward\_remittance",\
"is\_required": false,\
"type": "string",\
"allowed\_values": \[\
"investment\_income",\
"salary",\
"insurance\_payments",\
"computer\_services",\
"educational\_services",\
"payment\_of\_goods",\
"payment\_of\_services",\
"Inward\_remittance"\
\],\
"description": "Required only for sending to - China, India, South Korea, Philippines, Malaysia"\
}\
\],
"payout\_options": \[\
{\
"name": "beneficiary\_country",\
"regex": "^\[A-Z\]{2}$",\
"is\_required": true,\
"type": "string",\
"description": "Country where the beneficiary account is held"\
},\
{\
"name": "description",\
"regex": "^.{1,140}",\
"is\_required": true,\
"type": "string",\
"description": "Payout purpose description"\
},\
{\
"name": "statement\_descriptor",\
"regex": "^.{1,140}",\
"is\_required": false,\
"type": "string",\
"description": "Information to be displayed in the beneficiary statement"\
}\
\],
"minimum\_amount": null,
"maximum\_amount": null,
"batch\_file\_header": "payout\_method\_type,sender\_currency,payout\_currency,beneficiary.first\_name,beneficiary.last\_name,beneficiary.address,beneficiary.city,beneficiary.state,beneficiary.country,beneficiary.postcode,beneficiary.account\_number,beneficiary.bic\_swift,sender.company\_name,sender.address,sender.city,sender.state,sender.country,sender.postcode,sender.purpose\_code"
}
The `data` section of this response shows required fields for **xx\_swift\_bank**.
You will use the required fields for the 'beneficiary' and 'sender' objects when you ask Rapyd to process the payout:
Description of Fields
| | |
| --- | --- |
| Beneficiary | Sender |
| first\_name | company\_name |
| last\_name | address |
| address | city |
| city | country |
| country | purpose code (See [Purpose Code](swift-payout.html "SWIFT Payout")
.) |
| postcode | |
| account\_number | |
| bic\_swift | |
### Tip
Use [Validate Beneficiary](validate-beneficiary.html "Validate Beneficiary")
to check the beneficiary fields before you request the payout. See [Validating Beneficiary Details](validating-beneficiary-details.html "Validating Beneficiary Details")
.
[###### Required Fields By Country](#idp236238_body)
The following tables list the requirements for the required fields, specific to each country.
The fields used in the **xx\_swift\_bank** payout method are standardized. But each country has different requirements for the payout required fields information.
### Field Length Limitations
The beneficiary and sender have a character limit for the following fields: city, state, country, and postcode. The combined length of the fields can use a maximum of 32 characters for the sender, and a maximum of 32 characters for the beneficiary.
Supported Characters
The supported characters for the `first_name` , `last_name`, `address`, and `description` fields are:
* a-z,
* A-Z,
* 0-9
* Special characters: / -? : ( ) . , ' +
* space character
The following tables list the requirements for the required fields, specific to each country.
United Kingdom (GB)
| | | |
| --- | --- | --- |
| Object | Parameter | Description |
| beneficiary\_required\_fields | first\_name | Enter the first name of the beneficiary |
| beneficiary\_required\_fields | last\_name | Enter the last name of the beneficiary |
| beneficiary\_required\_fields | address | Enter the address of the beneficiary |
| beneficiary\_required\_fields | city | Enter the city of the beneficiary |
| beneficiary\_required\_fields | country | Enter the country of the beneficiary |
| beneficiary\_required\_fields | postcode | Enter the postcode of the beneficiary |
| beneficiary\_required\_fields | account\_number | Use an IBAN for the beneficiary `account_number` field |
| beneficiary\_required\_fields | bic\_swift | Use BIC 11 (including branch details) for the beneficiary `bic_swift` field |
| sender\_required\_fields | company\_name | Enter the company name of the sender |
| sender\_required\_fields | address | Enter the address of the sender |
| sender\_required\_fields | city | Enter the city of the sender |
| sender\_required\_fields | country | Enter the country of the sender |
| sender\_required\_fields | purpose\_code | This field is not required for this country |
| payout\_options | beneficiary\_country | Enter the country of the beneficiary |
| payout\_options | description | Enter the purpose of the payment. Up to 35 characters. |
| payout\_options | statement\_descriptor | This field is not required for this country |
Singapore (SG)
| | | |
| --- | --- | --- |
| Object | Parameter | Description |
| beneficiary\_required\_fields | first\_name | Enter the first name of the beneficiary |
| beneficiary\_required\_fields | last\_name | Enter the last name of the beneficiary |
| beneficiary\_required\_fields | address | Enter the address of the beneficiary |
| beneficiary\_required\_fields | city | Enter the city of the beneficiary |
| beneficiary\_required\_fields | country | Enter the country of the beneficiary |
| beneficiary\_required\_fields | postcode | Enter the postcode of the beneficiary |
| beneficiary\_required\_fields | account\_number | Enter the account number |
| beneficiary\_required\_fields | bic\_swift | Enter the BIC information |
| sender\_required\_fields | company\_name | Enter the company name of the sender |
| sender\_required\_fields | address | Enter the address of the sender |
| sender\_required\_fields | city | Enter the city of the sender |
| sender\_required\_fields | country | Enter the country of the sender |
| sender\_required\_fields | purpose\_code | This field is not required for this country |
| payout\_options | beneficiary\_country | Enter the country of the beneficiary |
| payout\_options | description | Enter the purpose of the payment. Up to 35 characters. |
| payout\_options | statement\_descriptor | This field is not required for this country |
India (IN)
| | | |
| --- | --- | --- |
| Object | Parameter | Description |
| beneficiary\_required\_fields | first\_name | Enter the first name of the beneficiary |
| beneficiary\_required\_fields | last\_name | Enter the last name of the beneficiary. This field can be left empty if the beneficiary only has one name. |
| beneficiary\_required\_fields | address | Enter the address of the beneficiary |
| beneficiary\_required\_fields | city | Enter the city of the beneficiary |
| beneficiary\_required\_fields | country | Enter the country of the beneficiary |
| beneficiary\_required\_fields | postcode | Enter the postcode of the beneficiary |
| beneficiary\_required\_fields | account\_number | Cannot contain dashes, spaces, or any non-standard characters. |
| beneficiary\_required\_fields | bic\_swift | Enter the BIC information. |
| sender\_required\_fields | company\_name | Enter the company name of the sender |
| sender\_required\_fields | address | Enter the address of the sender |
| sender\_required\_fields | city | Enter the city of the sender |
| sender\_required\_fields | country | Enter the country of the sender |
| sender\_required\_fields | purpose\_code | This field is required for this country. See [Purpose Code](swift-payout.html "SWIFT Payout") |
| payout\_options | beneficiary\_country | Enter the country of the beneficiary |
| payout\_options | description | Enter the purpose of the payment. |
| payout\_options | statement\_descriptor | The Legal Entity Identifier (LEI) must be present for transactions above 500,000 **INR** for both the beneficiary and sender. Format: ‘Rem LEI XXXXXXXXX Ben LEI XXXXXXXX’. |
Thailand (TH)
### Note
Transfers equal to or greater than **THB** 5 million require supporting documentation indicating the purpose and exact amount of each payment. Supporting documentation includes a copy of the invoice or payroll request, or a letter on signed letterhead describing the reason for transfer.
| | | |
| --- | --- | --- |
| Object | Parameter | Description |
| beneficiary\_required\_fields | first\_name | Enter the first name of the beneficiary |
| beneficiary\_required\_fields | last\_name | Enter the last name of the beneficiary |
| beneficiary\_required\_fields | address | Enter the address of the beneficiary |
| beneficiary\_required\_fields | city | Enter the city of the beneficiary |
| beneficiary\_required\_fields | country | Enter the country of the beneficiary |
| beneficiary\_required\_fields | postcode | Enter the postcode of the beneficiary |
| beneficiary\_required\_fields | account\_number | Enter the account number |
| beneficiary\_required\_fields | bic\_swift | Enter the BIC information |
| sender\_required\_fields | company\_name | Enter the company name of the sender |
| sender\_required\_fields | address | Enter the address of the sender |
| sender\_required\_fields | city | Enter the city of the sender |
| sender\_required\_fields | country | Enter the country of the sender |
| sender\_required\_fields | purpose\_code | This field is not required for this country |
| payout\_options | beneficiary\_country | Enter the country of the beneficiary |
| payout\_options | description | Enter the purpose of the payment. Up to 35 characters. |
| payout\_options | statement\_descriptor | This field is not required for this country |
Hong Kong (HK)
| | | |
| --- | --- | --- |
| Object | Parameter | Description |
| beneficiary\_required\_fields | first\_name | Enter the first name of the beneficiary |
| beneficiary\_required\_fields | last\_name | Enter the last name of the beneficiary |
| beneficiary\_required\_fields | address | Enter the address of the beneficiary |
| beneficiary\_required\_fields | city | Enter the city of the beneficiary |
| beneficiary\_required\_fields | country | Enter the country of the beneficiary |
| beneficiary\_required\_fields | postcode | Enter the postcode of the beneficiary |
| beneficiary\_required\_fields | account\_number | Enter the account number |
| beneficiary\_required\_fields | bic\_swift | Enter the BIC information. |
| sender\_required\_fields | company\_name | Enter the company name of the sender |
| sender\_required\_fields | address | Enter the address of the sender |
| sender\_required\_fields | city | Enter the city of the sender |
| sender\_required\_fields | country | Enter the country of the sender |
| sender\_required\_fields | purpose\_code | This field is not required for this country |
| payout\_options | beneficiary\_country | Enter the country of the beneficiary |
| payout\_options | description | Enter the purpose of the payment. Up to 35 characters. |
| payout\_options | statement\_descriptor | This field is not required for this country |
Malaysia (MY)
| | | |
| --- | --- | --- |
| Object | Parameter | Description |
| beneficiary\_required\_fields | first\_name | Enter the first name of the beneficiary |
| beneficiary\_required\_fields | last\_name | Enter the last name of the beneficiary |
| beneficiary\_required\_fields | address | Enter the address of the beneficiary |
| beneficiary\_required\_fields | city | Enter the city of the beneficiary |
| beneficiary\_required\_fields | country | Enter the country of the beneficiary |
| beneficiary\_required\_fields | postcode | Enter the postcode of the beneficiary |
| beneficiary\_required\_fields | account\_number | Enter the account number |
| beneficiary\_required\_fields | bic\_swift | Enter the BIC information |
| sender\_required\_fields | company\_name | Enter the company name of the sender |
| sender\_required\_fields | address | Enter the address of the sender |
| sender\_required\_fields | city | Enter the city of the sender |
| sender\_required\_fields | country | Enter the country of the sender |
| sender\_required\_fields | purpose\_code | This field is required for this country. See [Purpose Code](swift-payout.html "SWIFT Payout") |
| payout\_options | beneficiary\_country | Enter the country of the beneficiary |
| payout\_options | description | Enter the purpose of the payment. Up to 15 characters. |
| payout\_options | statement\_descriptor | This field is not required for this country |
Brazil (BR)
| | | |
| --- | --- | --- |
| Object | Parameter | Description |
| beneficiary\_required\_fields | first\_name | Enter the first name of the beneficiary |
| beneficiary\_required\_fields | last\_name | Enter the last name of the beneficiary |
| beneficiary\_required\_fields | address | Enter the address of the beneficiary |
| beneficiary\_required\_fields | city | Enter the city of the beneficiary |
| beneficiary\_required\_fields | country | Enter the country of the beneficiary |
| beneficiary\_required\_fields | postcode | Enter the postcode of the beneficiary |
| beneficiary\_required\_fields | account\_number | Use an IBAN for the beneficiary `account_number` field if available |
| beneficiary\_required\_fields | bic\_swift | Enter the BIC information |
| sender\_required\_fields | company\_name | Enter the company name of the sender |
| sender\_required\_fields | address | Enter the address of the sender |
| sender\_required\_fields | city | Enter the city of the sender |
| sender\_required\_fields | country | Enter the country of the sender |
| sender\_required\_fields | purpose\_code | This field is not required for this country |
| payout\_options | beneficiary\_country | Enter the country of the beneficiary |
| payout\_options | description | Enter the purpose of the payment. Up to 35 characters. |
| payout\_options | statement\_descriptor | This field is not required for this country |
Switzerland (CH)
| | | |
| --- | --- | --- |
| Object | Parameter | Description |
| beneficiary\_required\_fields | first\_name | Enter the first name of the beneficiary |
| beneficiary\_required\_fields | last\_name | Enter the last name of the beneficiary |
| beneficiary\_required\_fields | address | Enter the address of the beneficiary |
| beneficiary\_required\_fields | city | Enter the city of the beneficiary |
| beneficiary\_required\_fields | country | Enter the country of the beneficiary |
| beneficiary\_required\_fields | postcode | Enter the postcode of the beneficiary |
| beneficiary\_required\_fields | account\_number | Use an IBAN for the beneficiary `account_number` field if available |
| beneficiary\_required\_fields | bic\_swift | Enter the BIC information |
| sender\_required\_fields | company\_name | Enter the company name of the sender |
| sender\_required\_fields | address | Enter the address of the sender |
| sender\_required\_fields | city | Enter the city of the sender |
| sender\_required\_fields | country | Enter the country of the sender |
| sender\_required\_fields | purpose\_code | This field is not required for this country |
| payout\_options | beneficiary\_country | Enter the country of the beneficiary |
| payout\_options | description | Enter the purpose of the payment |
| payout\_options | statement\_descriptor | This field is not required for this country |
South Korea (KR)
| | | |
| --- | --- | --- |
| Object | Parameter | Description |
| beneficiary\_required\_fields | first\_name | Enter the first name of the beneficiary |
| beneficiary\_required\_fields | last\_name | Enter the last name of the beneficiary |
| beneficiary\_required\_fields | address | Enter the address of the beneficiary |
| beneficiary\_required\_fields | city | Enter the city of the beneficiary |
| beneficiary\_required\_fields | country | Enter the country of the beneficiary |
| beneficiary\_required\_fields | postcode | Enter the postcode of the beneficiary |
| beneficiary\_required\_fields | account\_number | Enter the account number |
| beneficiary\_required\_fields | bic\_swift | Enter the BIC information |
| sender\_required\_fields | company\_name | Enter the company name of the sender |
| sender\_required\_fields | address | Enter the address of the sender |
| sender\_required\_fields | city | Enter the city of the sender |
| sender\_required\_fields | country | Enter the country of the sender |
| sender\_required\_fields | purpose\_code | This field is required for this country. See [Purpose Code](swift-payout.html "SWIFT Payout") |
| payout\_options | beneficiary\_country | Enter the country of the beneficiary |
| payout\_options | description | Enter the purpose of the payment. Up to 15 characters. |
| payout\_options | statement\_descriptor | This field is not required for this country |
[###### Requesting a Payout](#idp237409_body)
Your company is the sender of the payout and the employee is the beneficiary who receives the payout.
When your payroll manager requests a payout from the company's eWallet to an employee's bank account, you ask Rapyd to process the payout.
For that, you'll use [Create Payout](create-payout.html "Create Payout")
with the following parameters:
Description of Body Parameters
| | |
| --- | --- |
| Body Parameter | Description |
| beneficiary | Enter a 'beneficiary' object that has the following fields:
`first_name` - Henry
`last_name` - Tan
`account_number` - 888449956988
`aba` - Enter the ABA routing number: 573675777 |
| beneficiary\_country | Enter **GB** as the code for the United Kingdom, the beneficiary's country. |
| beneficiary\_entity\_type | Enter 'individual' as the type of entity for the beneficiary. |
| description | Enter 'Test Payout - bank to wallet' as the description of the payout transaction. |
| ewallet | Enter the wallet 'id' that you received when you created the company wallet in your sandbox. For purposes of this use case lesson, we are using **ewallet\_27a63119c130f95a6ec59f86c93f28f8**, which is the company wallet ID we created in our sandbox. |
| payout\_amount | Enter 3000 as the amount received by the beneficiary. |
| payout\_currency | Enter **GBP** as the code for British Pound sterling, the currency received by the beneficiary. |
| payout\_method\_type | Enter **xx\_swift\_bank** as the payout method type. |
| sender | Enter a 'sender' object that has the following fields:`company_name` - Enter the Business Name`purpose code` - Enter salary |
| sender\_currency | Enter **EUR** as the code for Euros, the sender's currency. |
| sender\_entity\_type | Enter 'company' as the type of entity for the sender. |
| sender\_country | Enter **FR** as the code for France, the sender's country. |
###### Create Payout Request
You ask Rapyd to process the payout of 3,000 British Pound Sterling to the employee's UK bank account.
* * Request
* // Request URL: POST https://sandboxapi.rapyd.net/v1/payouts
// Message body:
{
"ewallet": "ewallet\_27a63119c130f95a6ec59f86c93f28f8",
"merchant\_reference\_id": "Test-Cash-8888",
"payout\_amount": 3000,
"payout\_method\_type": "xx\_swift\_bank",
"sender\_currency": "EUR",
"sender\_country": "FR",
"beneficiary\_country": "GB",
"payout\_currency": "GBP",
"sender\_entity\_type": "company",
"beneficiary\_entity\_type": "individual",
"beneficiary": {
"payment\_type": "regular",
"address": "1 Main Street",
"city": "Anytown",
"country": "US",
"first\_name": "Henry",
"last\_name": "Tan",
"state": "NY",
"phone\_number": "+145434653466",
"postcode": "10101",
"aba": "573675777",
"account\_number": "888\*\*\*\*\*\*\*\*",
"identification\_type": "work\_permit",
"identification\_value": "asdasd123123"
},
"sender": {
"company\_name" : "Test Sender 123",
"city": "Anytown",
"state": "NY",
"phone\_number": "+145434653466"
},
"description": "Test payout - bank to wallet",
"statement\_descriptor": "Test txn",
"metadata": {
"merchant\_defined": true
}
}
###### Create Payout Response
Let's take a look at the response.
* * Response
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "4a6e569e-0ed5-4a5c-a102-a47931cf248e"
},
"data": {
"id": "payout\_c87991aabb7266e4dcb8fc6f2a68505c",
"payout\_type": "bank",
"payout\_method\_type": "xx\_swift\_bank",
"amount": 3000,
"payout\_currency": "GBP",
"sender\_amount": 3527.09,
"sender\_currency": "EUR",
"status": "Confirmation",
"sender\_country": "FR",
"sender": {
"country": "FR",
"entity\_type": "company",
"name": "Test Sender 123",
"city": "Anytown",
"state": "NY",
"phone\_number": "+145434653466",
"company\_name": "Test Sender 123",
"currency": "EUR"
},
"beneficiary\_country": "GB",
"beneficiary": {
"last\_name": "Tan",
"first\_name": "Henry",
"country": "US",
"entity\_type": "individual",
"address": "1 Main Street",
"name": "Henry Tan",
"postcode": "10101",
"city": "Anytown",
"state": "NY",
"phone\_number": "+145434653466",
"account\_number": "888\*\*\*\*\*\*\*\*",
"currency": "GBP",
"identification\_type": "work\_permit",
"identification\_value": "asdasd123123",
"aba": "573675777",
"payment\_type": "regular"
},
"fx\_rate": 0.85055905,
"instructions": {},
"ewallets": \[\
{\
"ewallet\_id": "ewallet\_27a63119c130f95a6ec59f86c93f28f8",\
"amount": 3527.09,\
"percent": 100\
}\
\],
"metadata": {
"merchant\_defined": true
},
"description": "Test payout - bank to wallet",
"created\_at": 0,
"payout\_fees": null,
"expiration": null,
"merchant\_reference\_id": "Test-Cash-8888",
"paid\_at": null,
"identifier\_type": null,
"identifier\_value": null,
"error": null,
"paid\_amount": 0,
"statement\_descriptor": "Test txn",
"gc\_error\_code": "NOT\_IMPLEMENTED"
}
}
Besides parameter values that you entered in the request, the data section of this response shows:
* The `id` of the 'payout' object is **payout\_c87991aabb7266e4dcb8fc6f2a68505c**. Webhooks that relate to this payout refer to this ID.
* The `payout_type` is bank.
* Under `sender`: Fields of the 'sender' object are listed.
* Under `beneficiary`: Fields of the 'beneficiary' object are listed.
* The `status` is Confirmation. This means that the 'payout' object is waiting for confirmation of the FX rate.
[###### Purpose Code](#idp237542_body)
The purpose code describes the nature of the payout, or what the payout is for. Here are the possible values for the `purpose_code` field:
| | |
| --- | --- |
| Field | Value |
| purpose\_code | investment\_income |
| purpose\_code | salary |
| purpose\_code | insurance\_payments |
| purpose\_code | computer\_services |
| purpose\_code | educational\_services |
| purpose\_code | payment\_of\_goods |
| purpose\_code | payment\_of\_services |
| purpose\_code | Inward\_remittance |
### Purpose Code Required Countries
The following countries require a purpose code when making a payout:
* China
* India
* South Korea
* Philippines
* Malaysia
[###### Closing the Transaction](#idp237610_body)
**Simulating Payout Completion**
The sandbox does not directly simulate the action of the beneficiary receiving the payout funds. You can simulate this action with the procedure described in [Complete Payout](complete-payout.html "Complete Payout")
. For this, you will need the payout ID and payout amount that you generated in your sandbox.
When a payout completion is simulated, Rapyd sends a webhook. Configure your system to receive webhooks with the procedure described in [Defining a Webhook Endpoint](defining-a-webhook-endpoint.html "Defining a Webhook Endpoint")
.
After you simulate that the employee's bank has accepted the transfer, Rapyd sends you [Webhook - Payout Completed](payout-completed-webhook.html "Payout Completed Webhook")
. The webhook confirms that the payout was completed.
In this section:
Search results
--------------
No results found
* [Prev](card-payout.html#idp235730)
* [Next](swift-payout.html#idp235920)
---
# Create a Payout
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Client Portal Guide](client-portal-guide.html)
* [Disburse](disburse.html)
* Create a Payout
* [Prev](listing-payouts.html#idp257601)
* [Next](create-a-payout.html#idp257643)
#### Create a Payout
Create a Payout using the Client Portal.
You can create a payout right from the Client Portal by logging in and going to **Disburse** > **Payouts** > **Create Payout**.
**Note**: This procedure requires Owner or Administrator privileges.
[##### How to Create a Payout](#idp257643_body)
1. Sign in as described in [Accessing the Client Portal](accessing-the-client-portal.html "Accessing the Client Portal")
and navigate to **Disburse** > **Payouts** > **Create Payout** or **Disburse** > **Overview** > **Create Payout**.

###### Payout Details
The Payout Details page appears.

### Pay For Someone Else
The **Pay for Someone Else** checkbox can be clicked if you want to create a payout where someone else is the sender. This option is for enterprise customers only.
* If **Pay for Someone Else** is selected, the **Source of Funds** field will appear.
* If you have multiple client wallets available, then you can choose the source of funds for the payout from the dropdown menu.
* Choose the **Company Balance** or **End User Wallet** option.
**Note**: The **End User Wallet** option will only appear if you are creating a payout on behalf of someone else.

1. Fill out the following fields:
* **From**: The origin country for the payout. This field is optional and will appear if **Pay for Someone Else** is checked.
* **To**: The destination country for the payout
* **Sent Amount**: The currency amount for the payout
* **Currency (for Sent Amount)**: The currency the payout will be sent
* **Currency (for Received Amount)**: The currency the payout will be received in by the beneficiary
2. Select the Beneficiary Entity Type: **Individual** or **Business**.
**Note**: The selected option will determine if the beneficiary will be an individual or a company.
3. Click **Next**.
###### Payout Method
The Payout Method page appears.

1. Select the Payout Category for the Payout Method Type:
* Bank
* Card
* Rapyd Wallet
**Note**: Only the payout categories available to you will be shown.
2. Choose the specific Payout Method Type from the drop down menu.
**Note**: Arrival Time Details will be shown in the callout below the payment method type selection.
3. Click **Next**.
###### Sender and Beneficiary
The Sender and Beneficiary page appears.

You must create or select a Sender and Beneficiary for the payout.
1. Search for a sender using the search bar. Search by: **Sender ID**, **Name**, or **Reference ID**. For more information on the fields, see [Listing Payouts](listing-payouts.html "Listing Payouts")
.

2. **Optional**: You can click **\+ Create New Sender** if you want a new sender for the payout. This option will appear if the **Pay for Someone Else** option is checked.
3. The **Create Sender** window appears.

4. List the Company Name and click **Next**.
5. List any additional details and click **Confirm**.
6. Search for a beneficiary using the search bar. Search by: **Beneficiary ID**, **Name ID** or **Reference ID**. For more information on the fields, see [Listing Payouts](listing-payouts.html "Listing Payouts")
.
7. You can click **\+ Create New Beneficiary** if you want a new beneficiary for the payout.
8. The **Create New Beneficiary** window appears.
9. If your beneficiary is an:
* **Individual**: Add the First Name, Last Name, click **Next** and add the Additional Details.

* **Business**: Add the Company Name, click **Next** and add Additional Details.

10. Click **Confirm**.
### Required Fields for Sender or Beneficiary
There are required fields for both the Sender and Beneficiary in order to create a successful payout.
If the sender or beneficiary you selected is missing required fields, you will be prompted to fill in the missing fields. A new sender or beneficiary will be created with the updated required fields.
11. Once the Sender and Beneficiary have been selected, click **Next**.

###### Confirmation
The Confirmation page appears.

1. Review the transaction details before confirming the payout.

2. Check the **I confirm the payout details above** checkbox.
3. Click **Submit**.
You can send an email notification to the beneficiary when the payout is completed by submitting their email address in the provided field. This is optional.
The Payout confirmation dialogue box appears.

You can see the payout status under **Disburse** > **Payouts** as described in [Listing Payouts](listing-payouts.html "Listing Payouts")
.
**Note**: The payout tracker status can be shared with the beneficiary. For more information see [Payout Tracker Link](payout-tracker-link.html "Payout Tracker Link")
.
### Classic Version Still Available
You can click on the link at the top of the page to access the classic version of Create Payout.

The classic layout of Create Payout appears.

###### Blocked Payouts
The payouts you create can be blocked if they trigger a rule set by Rapyd Protect. See [Creating a Fraud Rule](creating-a-fraud-rule.html "Creating a Fraud Rule")
for more information.
1. When a payout is blocked by Rapyd Protect, the following error message appears:

2. Click the **More details** link to view a list of blocked transactions.

In this section:
Search results
--------------
No results found
* [Prev](listing-payouts.html#idp257601)
* [Next](create-a-payout.html#idp257643)
---
# Adding a Bank Account
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Client Portal Guide](client-portal-guide.html)
* [My Account](my-account.html)
* Adding a Bank Account
* [Prev](viewing-bank-accounts.html#idp250363)
* [Next](adding-a-bank-account.html#idp250384)
#### Adding a Bank Account
You can add a single bank account to your Rapyd Wallet. The bank account is used for settlements. When adding the bank account, the currency you select will be the settlement currency.
You must have Owner or Administrator privileges to add a bank account.
[##### How to Add a Bank Account](#idp250384_body)
To define a bank account:
1. Sign in to the Client Portal as described in [Signing in to the Client Portal](signing-in-to-the-client-portal.html "Signing In to the Client Portal")
and navigate to **My Account** > **Account management**.
The **Account management** page appears.

2. To add your bank account, tap the **Actions** drop-down in the **Accounts and settlement configuration** section.
3. Select **\+ Add bank account**.

4. The **Add bank account** dialog box appears.

5. Provide the following information:
* Under **Account Type**, select **Personal** or **Business**.
* When more than one client wallet is available, select the ewallet linked to your account in the drop-down menu.
* In the **Country of Bank** drop-down list, select the country in which the bank is located.
* In the **Currency of Account** drop-down list, select the settlement currency.
**Note**: The currency may already be preselected.
6. Tap **Next**. The following panel appears:

7. Enter the values for the **Reporting Information** fields:
* **Account Nickname** - A unique internal alias, such as **US Dollar Account**.
* **Bank Name** - The bank's name (e.g. Bank of America, Chase Bank).
* **Reference ID** - A unique identification that can be added to settlements.
**Note**: If the bank name is not listed in the dropdown, select **Other** and enter the bank name in the field.
8. Enter the values for the **Bank Details** fields:
**Note**: These fields might vary, depending on your bank account's country and currency.

* **IBAN** - International Bank Account Number
* **BIC SWIFT Code** - The Business Identifier Code associated with the bank.
* **Sort Code** - A routing number used for UK bank accounts.
* **Beneficiary Name** - The name of the beneficiary associated with the account.
**Note**: The Beneficiary Name must match the name of the Bank Account Holder in order to settle funds.
9. Tap **Submit**.
The new bank account appears under **Accounts and settlement configuration**.
[##### Bank Account Verification](#idp250483_body)
You need to verify your bank account information when linking your account to Rapyd through the Client Portal.
###### Verifying a Bank Account with a Bank Statement
You can verify your bank account information using your bank statement with the following steps:
**Note**: The country of origin for your bank account must be a country that is not the UK.
1. After adding your bank account information, the **Bank account added** dialog box appears.

2. Click the **Upload bank statement** button.
3. The **Upload bank statement** dialog box appears.

4. Add your bank statement file by either dragging the file, or clicking the **+** icon.
5. Click **Upload**.
### Bank Account Verification Status
Rapyd will review the uploaded bank statement file. The bank account will have a status of **Not Verified** until the file is fully reviewed and approved.
###### Verifying a Bank Account with a Redirect
You can verify your bank account by redirecting to a permissions page to verify your account information with the following steps:
**Note**: The country of origin for your bank account must be one of the following countries: UK, France, Germany, Netherlands, Belgium, Italy, or Iceland.
1. Sign in to the Client Portal as described in [Signing In to the Client Portal](signing-in-to-the-client-portal.html "Signing In to the Client Portal")
and navigate to **My Account** > **Settlements**.
2. Click **Add Bank Account**.
3. Provide the required bank account information in the window that appears. See [How to Add a Bank Account](adding-a-bank-account.html "Adding a Bank Account")
for more detail.

4. Click **Submit**.
5. After submitting the bank account details, you will be redirected to a permissions page.
6. Read the terms and conditions. Give Rapyd the permission to access your bank account information.
7. Click **Accept**.
8. Redirect to your bank website.
9. Log in to your bank.
10. Confirm permissions for Rapyd to access your account information.
11. Click **Confirm**.
12. Redirect to the **Settlements** page in Client Portal.
13. The verified bank account appears on the **Settlements** page with a status of **Verified**.
In this section:
Search results
--------------
No results found
* [Prev](viewing-bank-accounts.html#idp250363)
* [Next](adding-a-bank-account.html#idp250384)
---
# Viewing Payment Details
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Client Portal Guide](client-portal-guide.html)
* [Collect](collect.html)
* [Payments](payments.html)
* Viewing Payment Details
* [Prev](listing-payments.html#idp253284)
* [Next](viewing-payment-details.html#idp253452)
##### Viewing Payment Details
You can view details of a specific payment.
[###### How to View Payment Details](#idp253452_body)
1. Sign in as described in [Accessing the Client Portal](accessing-the-client-portal.html "Accessing the Client Portal")
and navigate to **Collect** > **Payments**. The **Payments** page appears.
2. Do one of the following:
* For a preview of the payment, continue to step 3.
* For payment details, continue to step 4.
3. Hover over the row that contains the payment you want to view and then click on the row.

The following panel appears:

For a description of the information displayed, see [Listing Payments](listing-payments.html "Listing Payments")
.
### Note
To continue to the **Payment Details** page, tap **See all details** .
4. Tap the **See more details icon** of the payment you want to view.

The **Payment Details** page appears.

For a description of the information displayed, see [Listing Payments](listing-payments.html "Listing Payments")
.
### Closing or Rejecting Payments
You close or reject payments in Client Portal by Viewing the Payment Details as previously described under How to View Payment Details and go to **Change Status** > **Complete** or **Reject** > **Confirm** .
[###### Creating a Refund](#idp253503_body)
You can create a refund for completed payments. Status should be **Closed**.
1. Click the desired transaction
2. On the details panel select **Create Refund**.
3. Complete the Refund fields
4. Click **Create**.
[###### Downloading a PDF Receipt](#idp253518_body)
1. Click the desired transaction.
2. On the details panel, select **Download Receipt**.
**Note**: You can also select **Download Receipt** from the full Payment Details page. The receipt will download to your designated downloads folder.
3. Click on the downloaded file to open.
The PDF receipt will have the following information:
* Business name - matches your legal business name listed in your Client Portal account under **Settings** > **Account Details**
* Business address - Lists a designated business address including address line, city, state/territory, country and zip
**Note**: A merchant can only have 1 listed address.
* Payment Method with last 4 digits - Format of Visa \*\*\*\*1111
* Date paid - date of the transaction
* Amount - total payment with currency

In this section:
Search results
--------------
No results found
* [Prev](listing-payments.html#idp253284)
* [Next](viewing-payment-details.html#idp253452)
---
# Rapyd Verify Hosted Page
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Product Guide](product-guide.html)
* [Rapyd Verify](rapyd-verify.html)
* Rapyd Verify Hosted Page
* [Prev](rapyd-verify.html#idp246269)
* [Next](rapyd-verify-hosted-page.html#idp246300)
#### Rapyd Verify Hosted Page
Streamline your business verification process. | `Enterprise` `beta`
Use Rapyd Verify to efficiently gather business details for [KYB](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_kyb "Know Your Business")
verification. The Rapyd Verify Hosted Page is generated to collect the business or sellers information. Based on the evaluation the seller is either approved or rejected and Rapyd sends a status update. Once a business or seller is approved, Rapyd updates the platform capabilities and the available transactions that can be processed.
**Common Use Cases**
* A client onboards sellers on its marketplace platform and wants to use Rapyd Verify Hosted Page application process for the business onboarding process.
Rapyd Verify Hosted Page Example
1. Enter your business information.
2. Click **Start Application**.
3. Enter your business details, company details, and owner information to complete the application process.
4. Click **Submit**.
[##### Create Rapyd Verify Hosted Page Workflow](#idp246300_body)

1. You request to [Create a Wallet](create-wallet.html "Create Wallet")
for a seller, and collect their information.
2. Rapyd Creates a Wallet for the seller, and sends a notification.
3. You request to Create a Rapyd Verify Hosted Page, and send it to the seller.
4. The seller completes the hosted page, and Rapyd sends you a notification.
[##### Rapyd Verify Message Sequences](#idp246315_body)
The message sequence diagrams below describe how information is exchanged between Rapyd and the merchant.
Create Rapyd Verify Application

[##### Rapyd Verify Application Statuses](#idp246322_body)
The finite state diagram below summarizes the statuses for the Rapyd Verify Application.

Description of Statuses
| Status | Description |
| --- | --- |
| new | The Rapyd Verify application has been created. |
| submitted | The Rapyd Verify application has been submitted. |
| approved | The Rapyd Verify application has been approved. |
| rejected | The Rapyd Verify application has been rejected. |
[##### How the Verify Hosted Page Works](#idp246360_body)
1. Create a Wallet as described in [Create Wallet](create-wallet.html "Create Wallet")
.
2. Use the [Create Rapyd Verify Application](create-rapyd-verify-application.html "Create Rapyd Verify Application")
API call.
[###### Rapyd Verify Hosted Page Request](#idp246369_body)
* * Request
* {
"reference\_id": "TestVericication123456891",
"ewallet": "ewallet\_cc62e92b7ab18dbf44a41218a85ac624",
"contact": "cont\_0103a8fb4e44155904709ee7d1cc84de",
"page\_expiration": 1608621350,
"cancel\_url": "http://docs.rapyd.net",
"complete\_url": "http://rapyd.net",
"country":"us"
}
//Full request body not shown
### Note
You can also find the Rapyd Verify Hosted Page object fields in [Create Rapyd Verify Application](create-rapyd-verify-application.html "Create Rapyd Verify Application")
.
[###### Rapyd Verify Hosted Page Response](#idp246382_body)
* * Response
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "112af633-1cce-4384-abaf-65a5173c9aa4"
},
"data": {
"id": "hp\_idv\_d9cabeee58662729de6325b0ac69efe8",
"status": "NEW",
"reference\_id": "TestVericication123456891",
"wallet": "ewallet\_cc62e92b7ab18dbf44a41218a85ac624",
"contact": "cont\_0103a8fb4e44155904709ee7d1cc84de",
"language": null,
"country": "US",
"page\_expiration": 1632257699,
"request\_type": "verify",
"redirect\_url": "https://sandboxhosted.rapyd.net/idv?token=hp\_idv\_d9cabeee58662729de6325b0ac69efe8",
"merchant\_website": "http://rapyd.net",
"merchant\_color": "323fff",
"merchant\_logo": null,
"cancel\_url": "http://docs.rapyd.net",
"complete\_url": "http://rapyd.net"
}
}
//Full message response not shown
In this section:
The process of verifying the identity of a business customer.
Search results
--------------
No results found
* [Prev](rapyd-verify.html#idp246269)
* [Next](rapyd-verify-hosted-page.html#idp246300)
---
# Create Beneficiary
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [API Reference](api-reference.html)
* [Rapyd Disburse](rapyd-disburse-368669.html)
* [Beneficiary](beneficiary.html)
* Create Beneficiary
* [Prev](beneficiary.html)
* [Next](create-beneficiary.html#idp365083)
##### Create Beneficiary
Create a beneficiary for use in payouts.
The response provides a unique beneficiary ID, which you can use in place of the `beneficiary` object for [Create Payout](create-payout.html "Create Payout")
This method triggers the [Beneficiary Created Webhook](beneficiary-created-webhook.html "Beneficiary Created Webhook")
webhook. This webhook contains the same information as the response.
### Note
In addition to the required fields documented below, you must include all other fields listed for the beneficiary in the response to [Get Payout Required Fields](get-payout-required-fields.html "Get Payout Required Fields")
, and you must conform to the regex provided.
To create a beneficiary that you can use with multiple payout methods, include all fields that are required by each payout method. The client is responsible for including all required fields.
The additional fields used in the **Create Beneficiary - individual** example are for the **ca\_general\_bank** payout method. The additional fields used in the **Create Beneficiary - company** example are for the **us\_ach\_bank** payout method.
[###### Parameters](#idp365087_body)
[###### Request Header Parameters](#idp365089_body)
[###### Request Body Parameters](#idp365149_body)
[###### Response Parameters](#idp365277_body)
###### Code Samples
* * .NET
* using System;
using System.Text.Json;
namespace RapydApiRequestSample
{
class Program
{
static void Main(string\[\] args)
{
try
{
var requestObj = new
{
category = "bank",
country = "CA",
currency = "USD",
entity\_type = "individual",
first\_name = "John",
identification\_type = "identification\_id",
identification\_value = "123456789",
last\_name = "Doe",
payment\_type = "priority",
address = "1 Main Street",
city = "Montreal",
state = "Quebec",
postcode = "12345",
account\_number = "1234567",
merchant\_reference\_id = "JDoe",
bic\_swift = "12345678XXX"
};
string request = JsonSerializer.Serialize(requestObj);
string result = RapydApiRequestSample.Utilities.MakeRequest("POST", "/v1/payouts/beneficiary", request);
Console.WriteLine(result);
}
catch (Exception e)
{
Console.WriteLine("Error completing request: " + e.Message);
}
}
}
}
* * JavaScript
* const makeRequest = require('/utilities').makeRequest;
async function main() {
try {
const body = {
category: 'bank',
country: 'CA',
currency: 'USD',
entity\_type: 'individual',
first\_name: 'John',
identification\_type: 'identification\_id',
identification\_value: '123456789',
last\_name: 'Doe',
payment\_type: 'priority',
address: '1 Main Street',
city: 'Montreal',
state: 'Quebec',
postcode: '12345',
account\_number: '1234567',
merchant\_reference\_id: 'JDoe',
bic\_swift: '12345678XXX'
};
const result = await makeRequest('POST', '/v1/payouts/beneficiary', body);
console.log(result);
} catch (error) {
console.error('Error completing request', error);
}
}
* * PHP
* /utilities.php";
include($path);
$beneficiary = \[\
"category" => "bank",\
"country" => "CA",\
"currency" => "USD",\
"entity\_type" => "individual",\
"first\_name" => "John",\
"identification\_type" => "identification\_id",\
"identification\_value" => "123456789",\
"last\_name" => "Doe",\
"payment\_type" => "priority",\
"address" => "1 Main Street",\
"city" => "Montreal",\
"state" => "Quebec",\
"postcode" => "12345",\
"account\_number" => "1234567",\
"merchant\_reference\_id" => "JDoe",\
"bic\_swift" => "12345678XXX"\
\];
try {
$object = make\_request('post', '/v1/payouts/beneficiary', $beneficiary);
var\_dump($object);
} catch(Exception $e) {
echo "Error: $e";
}
?>
* * Python
* from pprint import pprint
from utilities import make\_request
beneficiary\_details = {
"category": "bank",
"country": "CA",
"currency": "USD",
"entity\_type": "individual",
"first\_name": "John",
"identification\_type": "identification\_id",
"identification\_value": "123456789",
"last\_name": "Doe",
"payment\_type": "priority",
"address": "1 Main Street",
"city": "Montreal",
"state": "Quebec",
"postcode": "12345",
"account\_number": "1234567",
"merchant\_reference\_id": "JDoe",
"bic\_swift": "12345678XXX"
}
result = make\_request(method='post',
path='/v1/payouts/beneficiary',
body=beneficiary\_details)
pprint(result)
* /v1/payouts/beneficiary
* Create Beneficiary - individual
* curl -X post
https://sandboxapi.rapyd.net/v1/payouts/beneficiary
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
-d '{
"category": "bank",
"country": "CA",
"currency": "USD",
"entity\_type": "individual",
"first\_name": "John",
"last\_name": "Doe",
"identification\_type": "identification\_id",
"identification\_value": "123456789",
"default\_payout\_method\_type": "ca\_general\_bank",
"merchant\_reference\_id": "JohnDoe",
// Fields from 'beneficiary\_required\_fields' in the response to 'Get Payout Method Type Required Fields'
"payment\_type": "priority",
"address": "1 Main Street",
"city": "Montreal",
"state": "Quebec",
"postcode": "12345",
"account\_number": "1234567",
"bic\_swift": "12345678XXX"
}
'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "c63dbcc5-4bdf-49b5-907e-1320184bde74"
},
"data": {
"id": "beneficiary\_9a49c928c059886341898699992112d2",
"last\_name": "Doe",
"first\_name": "John",
"country": "CA",
"entity\_type": "individual",
"address": "1 Main Street",
"name": "John Doe",
"postcode": "12345",
"city": "Montreal",
"state": "Quebec",
"account\_number": "1234567",
"currency": "USD",
"identification\_type": "identification\_id",
"identification\_value": "\*\*\*\*\*\*\*\*\*",
"merchant\_reference\_id": "JohnDoe",
"bic\_swift": "12345678XXX",
"payment\_type": "priority",
"category": "bank",
"default\_payout\_method\_type": "ca\_general\_bank"
}
}
* Create Beneficiary - company
* curl -X post
https://sandboxapi.rapyd.net/v1/payouts/beneficiary
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
-d '{
"category": "bank",
"company\_name": "All Star Limousine",
"country": "US",
"currency": "USD",
"entity\_type": "company",
"identification\_type": "company\_registered\_number",
"identification\_value": "9876543210",
"merchant\_reference\_id": "AllStarLimo",
// Fields from 'beneficiary\_required\_fields' in the response to 'Get Payout Method Type Required Fields'
"account\_number": "0987654321",
"aba": "987654321"
}
'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "54a91bf6-00a8-4838-b1ee-28dfb815797b"
},
"data": {
"id": "beneficiary\_d895d90d276869efe1e359386a1fb3e3",
"country": "US",
"entity\_type": "company",
"name": "All Star Limousine",
"company\_name": "All Star Limousine",
"account\_number": "0987654321",
"currency": "USD",
"identification\_type": "company\_registered\_number",
"identification\_value": "9876543210",
"bank\_name": "All Star Limousine",
"merchant\_reference\_id": "AllStarLimo",
"aba": "987654321",
"category": "bank"
}
}
* Create Beneficiary - rapyd\_ewallet confirmation required
* curl -X post
https://sandboxapi.rapyd.net/v1/payouts/beneficiary
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
-d '{
"category": "rapyd\_ewallet",
"currency": "USD",
// Fields from 'beneficiary\_required\_fields' in the response to 'Get Payout Method Type Required Fields'
"confirmation\_required": true,
"ewallet": "ewallet\_3801e782955b29955445586a2405a5db"
}
'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "81026979-6ae7-49bc-9130-3226691df46b"
},
"data": {
"id": "beneficiary\_f7cd32a5bc72e1deb490f380683f4256",
"currency": "USD",
"ewallet": "ewallet\_3801e782955b29955445586a2405a5db",
"confirmation\_required": true,
"category": "rapyd\_ewallet"
}
}
* Create Beneficiary with card\_id
* curl -X post
https://sandboxapi.rapyd.net/v1/payouts/beneficiary
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
-d '{
"category": "card",
"country": "US",
"currency": "USD",
"entity\_type": "individual",
"first\_name": "John",
"last\_name": "Doe",
"identification\_type": "work permit",
"identification\_value": "6658412",
"merchant\_reference\_id": "JohnDoeOffice",
// Fields from 'beneficiary\_required\_fields' in the response to 'Get Payout Method Type Required Fields'
"payment\_type": "regular",
"address": "123 Main Street",
"city": "NY",
"postcode": "12345",
"card\_id": "card\_28b1dc9999123aba49703ee82f57ccb3"
}
'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "8acf3c5c-ff1a-48ec-b5e9-79d6abe5642c"
},
"data": {
"id": "beneficiary\_4d13aa2f3ef76536a6b4062d127475ce",
"last\_name": "Doe",
"first\_name": "John",
"country": "US",
"entity\_type": "individual",
"address": "123 Main Street",
"name": "John Doe",
"postcode": "12345",
"city": "NY",
"currency": "USD",
"identification\_type": "work permit",
"identification\_value": "\*\*\*\*\*\*\*",
"merchant\_reference\_id": "JohnDoeOffice",
"card\_expiration\_year": "23",
"card\_expiration\_month": "10",
"card\_number": "0001",
"payment\_type": "regular",
"category": "card"
}
}
* Create Beneficiary with card details
* curl -X post
https://sandboxapi.rapyd.net/v1/payouts/beneficiary
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
-d '
{
"category": "card",
"country": "CA",
"currency": "USD",
"entity\_type": "individual",
"first\_name": "John",
"last\_name": "Doe",
"identification\_type": "identification\_id",
"identification\_value": "123456789",
"default\_payout\_method\_type": "us\_visa\_card",
"email": "janedoe@Rapyd.net ",
"card\_number": "4111111111111111",
"card\_expiration\_month": "11",
"card\_expiration\_year": "24",
"card\_cvv": "123",
"merchant\_reference\_id": "JohnDoe",
"payment\_type": "priority",
"address": "1 Main Street",
"city": "Montreal",
"state": "Quebec",
"postcode": "12345"
}
'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "b2d2721c-d6d1-4954-a2bf-8c5aac2a86c4"
},
"data": {
"id": "beneficiary\_03db3e06ed883087b59cb8da12afc33f",
"last\_name": "Doe",
"first\_name": "John",
"country": "CA",
"entity\_type": "individual",
"address": "1 Main Street",
"name": "John Doe",
"postcode": "12345",
"city": "Montreal",
"state": "Quebec",
"currency": "USD",
"email": "janedoe@Rapyd.net ",
"identification\_type": "identification\_id",
"identification\_value": "\*\*\*\*\*\*\*\*\*",
"merchant\_reference\_id": "JohnDoe",
"bin\_details": {
"type": "CREDIT",
"brand": "VISA",
"level": null,
"issuer": "JPMORGAN CHASE BANK, N.A.",
"country": "US",
"bin\_number": "411111"
},
"card\_expiration\_year": "24",
"card\_expiration\_month": "11",
"card\_number": "1111",
"payment\_type": "priority",
"category": "card",
"default\_payout\_method\_type": "us\_visa\_card"
}
}
In this section:
The number of seconds elapsed since the beginning of the Unix epoch, which was 00:00:00 GMT on January 1, 1970. 10-digit integer.
A numeric identifier for financial institutions. It appears as the first four to six digits on a payment card.
Search results
--------------
No results found
* [Prev](beneficiary.html)
* [Next](create-beneficiary.html#idp365083)
---
# List Issued Card Transactions
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [API Reference](api-reference.html)
* [Rapyd Issuing](rapyd-issuing-365115.html)
* [Issued Card Transaction](issued-card-transaction.html)
* List Issued Card Transactions
* [Prev](issued-card-transaction.html)
* [Next](list-issued-card-transactions.html#idp397111)
##### List Issued Card Transactions
Use the GET method to retrieve a list of transactions for a specific issued card.
[###### Parameters](#idp397115_body)
[###### Request Path Parameters](#idp397117_body)
* * card
* ID of the issued card. String starting with **card\_**.
[###### Request Query Parameters](#idp397127_body)
* * start\_date
* Timestamp of the first transaction or later, in Unix time.
* * end\_date
* Timestamp of the last transaction or later, in Unix time.
* * min\_amount
* Transactions greater than a specific amount.
* * max\_amount
* Transactions smaller than a specific amount.
* * merchant\_name\_search
* Filters the results to return only transactions that have this string as part of the name or location.
* * page\_size
* Number of results per page.
* * page\_number
* Page number to retrieve.
[###### Request Header Parameters](#idp397172_body)
[###### Response Parameters](#idp397222_body)
###### Code Samples
* * .NET
* using System;
namespace RapydApiRequestSample
{
class Program
{
static void Main(string\[\] args)
{
try
{
string card = "card\_5004bc56594a31fb9a48b9b88c2d6f48";
string result = RapydApiRequestSample.Utilities.MakeRequest("GET", $"/v1/issuing/cards/{card}/transactions?min\_amount=5");
Console.WriteLine(result);
}
catch (Exception e)
{
Console.WriteLine("Error completing request: " + e.Message);
}
}
}
}
* * JavaScript
* const makeRequest = require('../../../../Utilities/JS/utilities').makeRequest;
async function main() {
try {
const result = await makeRequest(
'GET',
'/v1/issuing/cards/card\_5004bc56594a31fb9a48b9b88c2d6f48/transactions?min\_amount=5'
);
console.log(result);
} catch (error) {
console.error('Error completing request', error);
}
}
* * PHP
*
* * Python
* from pprint import pprint
from utilities import make\_request
results = make\_request(method='get',
path=f'/v1/issuing/cards/card\_5004bc56594a31fb9a48b9b88c2d6f48/transactions?min\_amount=5')
pprint(results)
* /v1/issuing/cards/:card/transactions
* List Issued Card Transactions
* curl -X get
https://sandboxapi.rapyd.net/v1/issuing/cards/card\_d8903df251a06a5dfa7630e0f6389fa4/transactions?min\_amount=5
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "1ea2effa-e039-40e7-a5db-a502a64ad023"
},
"data": \[\
{\
"id": "cit\_08693963613e325012f2ecbafcbae94a",\
"amount": 5,\
"currency": "USD",\
"created\_at": 1609767699,\
"card\_id": "card\_d8903df251a06a5dfa7630e0f6389fa4",\
"merchant\_category\_code": "",\
"merchant\_name\_location": "TEST MERCHANT",\
"auth\_code": "13QVNV",\
"bin": "523489",\
"last4": "1271",\
"issuing\_txn\_type": "SALE",\
"pos\_entry\_mode": "",\
"systems\_trace\_audit\_number": "",\
"retrieval\_reference\_number": "E347B32C01D5",\
"original\_transaction\_id": "",\
"original\_txn\_amount": null,\
"original\_txn\_currency": "",\
"fx\_rate": null,\
"card\_program": "",\
"wallet\_transaction\_id": "wt\_ed450816f2c67a13e39888be8c533679"\
},\
{\
"id": "cit\_862d97478bf33c9b0c6056d7f8a55262",\
"amount": 5,\
"currency": "USD",\
"created\_at": 1608796554,\
"card\_id": "card\_d8903df251a06a5dfa7630e0f6389fa4",\
"merchant\_category\_code": "",\
"merchant\_name\_location": "TEST MERCHANT",\
"auth\_code": "",\
"bin": "523489",\
"last4": "1271",\
"issuing\_txn\_type": "REFUND",\
"pos\_entry\_mode": "",\
"systems\_trace\_audit\_number": "",\
"retrieval\_reference\_number": "",\
"original\_transaction\_id": "",\
"original\_txn\_amount": null,\
"original\_txn\_currency": "",\
"fx\_rate": null,\
"card\_program": "",\
"wallet\_transaction\_id": ""\
}\
\]
}
In this section:
The number of seconds elapsed since the beginning of the Unix epoch, which was 00:00:00 GMT on January 1, 1970. 10-digit integer.
Search results
--------------
No results found
* [Prev](issued-card-transaction.html)
* [Next](list-issued-card-transactions.html#idp397111)
---
# Bank Payout Malaysia
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Product Guide](product-guide.html)
* [Payout Method Types](payout-method-types.html)
* [APAC](apac-394671.html)
* Bank Payout Malaysia
* [Prev](apac-394671.html#idp238274)
* [Next](bank-payout-malaysia.html#idp238313)
##### Bank Payout Malaysia
Disburse funds directly to a bank account. | `Enterprise`
**my\_local\_bank** is a new bank payout method type used for payouts in Malaysia. A sender can disburse funds into a beneficiary’s bank account in Malaysia. This payout method supports several banks in the region and allows the beneficiary to be paid in the currency of their choice.
The benefits for the user include the ability to create cross-border payouts and disburse funds into Malaysian bank accounts.
[###### Finding Required Fields for the Payout Method Type](#idp238313_body)
You need to find the required fields for each payout method type.
For that, you'll use [Get Payout Required Fields](get-payout-required-fields.html "Get Payout Required Fields")
. Enter **my\_local\_bank** as the value for the `payout_method_type` path parameter.
[###### Supported Banks and SWIFT Codes](#idp238320_body)
Below is a list of all the supported banks for **my\_local\_bank** and their bic\_swift codes:
| | | |
| --- | --- | --- |
| **Bank Name** | **bic\_swift** | **bic\_swift (alternative)** |
| Affin Bank | PHBMMYKL | |
| Affin Islamic Bank | AIBBMYKL | |
| Agro Bank | AGOBMYKL | |
| Alliance Bank | MFBBMYKL | |
| Alliance Islamic Bank | ALSRMYKL | |
| Al-Rajhi Banking and Investment Corporation (Malaysia) | RJHIMYKL | |
| AMBank Islamic | AISLMYKL | |
| AMBank | ARBKMYKL | |
| Bank Islam Malaysia | BIMBMYKL | |
| Bank Kerjasama Rakyat | BKRMMYKL | |
| Bank Muamalat Malaysia | BMMBMYKL | |
| Bank of America Malaysia | BOFAMY2X | |
| Bank Simpanan Nasional | BSNAMYK1 | |
| BNP Paribas Malaysia | BNPAMYKL | |
| CIMB Bank | CIBBMYKL | CIBBMYKA |
| CIMB Islamic Bank | CTBBMYKL | |
| Citibank | CITIMYKL | |
| Deutsche Bank Malaysia | DEUTMYKL | |
| Hong Leong Bank | HLBBMYKL | |
| Hong Leong Islamic Bank | HLIBMYKL | |
| HSBC Amanah Malaysia | HMABMYKL | |
| HSBC Bank | HBMBMYKL | |
| Industrial & Commercial Bank of China (Malaysia) | ICBKMYKL | |
| JP Morgan Chase Bank | CHASMYKX | |
| Kuwait Finance House Malaysia | KFHOMYKL | |
| Malayan Banking | MBBEMYKL | |
| MayBank Islamic | MBISMYKL | |
| Mizuho Bank (Malaysia) | MHCBMYKA | |
| OCBC AL-AMIN Bank | OABBMYKL | |
| OCBC Bank | OCBCMYKL | |
| Public Bank | PBBEMYKL | |
| Public Islamic Bank | PIBEMYK1 | |
| RHB Bank | RHBBMYKL | |
| RHB Islamic Bank | RHBAMYKL | |
| Standard Chartered Bank | SCBLMYKX | |
| Standard Chartered SAADIQ | SCSRMYKK | |
| Sumitomo Mitsui Banking Corporation (Malaysia) | SMBCMYKL | |
| United Overseas Bank (Malaysia) | UOVBMYKL | |
| CIMB Investment Bank | COIMMYKL | |
[###### Requesting a Payout](#idp238613_body)
Use [Create Payout](create-payout.html "Create Payout")
with the following parameters:
Create Payout Request Parameters
| | |
| --- | --- |
| **Body Parameter** | **Description** |
| ewallet | Enter the wallet 'id' that you received when you created the company wallet in your sandbox. |
| payout\_amount | Enter 100 as the amount received by the beneficiary. |
| payout\_method\_type | Enter **my\_local\_bank** as the payout method type. |
| sender\_currency | Enter **USD** as the code for United States Dollar, the sender's currency. |
| sender\_country | Enter **US** as the code for the United States, the sender's country. |
| beneficiary\_country | Enter **MY** as the code for Malaysia, the beneficiary's country. |
| payout\_currency | Enter **MYR** as the code for Malaysian Ringgit, the currency received by the beneficiary. |
| sender\_entity\_type | Enter ‘individual’ as the type of entity for the sender. |
| beneficiary\_entity\_type | Enter ‘individual’ as the type of entity for the beneficiary. |
| beneficiary | Enter a 'beneficiary' object that has the following fields:
* first\_name
* last\_name
* account\_number
* identification\_type
* identification\_value
* phone\_number
* bic\_swift
* purpose\_code
* nationality |
| sender | Enter a 'sender' object that has the following fields:
* company\_name
* identification\_type
* identification\_value
* phone\_number
* occupation
* source\_of\_income
* date\_of\_birth
* address
* purpose\_code
* beneficiary\_relationship
* bic\_swift
* nationality |
| description | Enter Salary payout - wallet to bank account as the description of the payout transaction. |
| payout\_options | Enter a ‘payout\_options’ object that has the following fields:
* beneficiary\_relationship
* purpose\_code |
[###### Create Payout Response](#idp238749_body)
[Create Payout](create-payout.html "Create Payout")
describes the fields in the response.
[###### Local Bank Payout Malaysia Details](#idp238753_body)
| | |
| --- | --- |
| **Details** | **Description** |
| Payout Method Category | bank |
| Payout Request String | POMT = my\_local\_bank |
| Country | Malaysia |
| Sender Currency | USD, GBP, SGD, HKD, AUD |
| Transaction Limits | Min: 1.00 MYR
Max: 999,999 MYR |
| Settlement Timeframe | 2-3 days |
In this section:
Search results
--------------
No results found
* [Prev](apac-394671.html#idp238274)
* [Next](bank-payout-malaysia.html#idp238313)
---
# Settings
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Client Portal Guide](client-portal-guide.html)
* Settings
* [Prev](funding-your-account-via-client-portal.html#idp250916)
* [Next](settings.html#idp250939)
### Settings
View Payment Methods, FX Rates, Branding, User Roles & Activity
Log into your [Client Portal Account](https://dashboard.rapyd.net/login)
and select the settings icon ().
Settings Overview
en/viewing-payment-methods.html
Viewing Payment Methods
View and manage your payment methods.
en/activating-apple-pay.html
Activating Apple Pay
Learn how to activate Apple Pay.
en/viewing-payout-methods.html
Viewing Payout Methods
View and manage your payout methods.
en/customizing-your-hosted-page.html
Customize Your Hosted Pages
Customize the hosted pages style and design.
In this section:
Search results
--------------
No results found
* [Prev](funding-your-account-via-client-portal.html#idp250916)
* [Next](settings.html#idp250939)
---
# Testing for Payment API
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [API Reference](api-reference.html)
* [Developer Resources](developer-resources.html)
* [Resources for Testing in the Sandbox](resources-for-testing-in-the-sandbox.html)
* Testing for Payment API
* [Prev](resources-for-testing-in-the-sandbox.html)
* [Next](error-simulation.html)
##### Testing for Payment API
The payments platform provides a sandbox environment where you can test your code's interaction with the platform.
The sandbox has a few features that are not present in the production environment. These features are designed to help you test your code.
Just like the production environment, the sandbox generates webhooks. To receive webhooks from the sandbox, use the procedure described in [Defining a Webhook Endpoint](defining-a-webhook-endpoint.html "Defining a Webhook Endpoint")
.
The following sections describe testing capabilities of the payments platform.
How-To Procedures
* [Simulated Errors](simulated-errors.html "Simulated Errors")
* [Simulating 3DS Authentication](simulating-3ds-authentication.html "Simulating 3DS Authentication")
* [Simulating 3DS Authentication - API Method](simulating-3ds-authentication---api-method.html "Simulating 3DS Authentication - API Method")
* [Simulating 3DS Authentication - Hosted Page](simulating-3ds-authentication---hosted-page.html "Simulating 3DS Authentication - Hosted Page")
* [Simulating Cardholder Disputes](simulating-cardholder-disputes.html "Simulating Cardholder Disputes")
* [Card Numbers for Testing](card-numbers-for-testing.html "Card Numbers for Testing")
* [Error Simulation](error-simulation.html "Error Simulation")
* [Simulating Rapyd Verify Application Responses](simulating-rapyd-verify-application-responses.html "Simulating Rapyd Verify Application Responses")
In this section:
Search results
--------------
No results found
* [Prev](resources-for-testing-in-the-sandbox.html)
* [Next](error-simulation.html)
---
# Create Payment Link
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [API Reference](api-reference.html)
* [Rapyd Collect](rapyd-collect-363484.html)
* [Payment Link](payment-link.html)
* Create Payment Link
* [Prev](payment-link.html)
* [Next](create-payment-link.html#idp321111)
##### Create Payment Link
Creates a reusable link for a hosted payment page.
A customer can use the link and the hosted payment page multiple times. After providing required information, the customer is redirected seamlessly to a Rapyd Checkout page to complete the payment.
You can create the link for everyone or for a specific customer. You can make the payment amount fixed, editable, or open.
[###### Parameters](#idp321115_body)
[###### Request Header Parameters](#idp321117_body)
[###### Request Body Parameters](#idp321177_body)
[###### Response Parameters](#idp321319_body)
* /v1/hosted/collect/payments
* Fixed amount with maximum payments defined
* curl -X post
https://sandboxapi.rapyd.net/v1/hosted/collect/payments
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
-d '{
"country": "GB",
"currency": "GBP",
"amount": "100",
"merchant\_reference\_id": "payment link",
"language": "EN",
"checkout": {
"error\_payment\_url": "https://www.rapyd.com",
"complete\_payment\_url": "https://www.rapyd.com"
},
"max\_payments":"3"
}
'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "60d647c7-f7e5-4849-864c-92f94a072591"
},
"data": {
"id": "hp\_reuse\_1921d09bf0fe23922887fb4282be51dc",
"amount": 100,
"currency": "GBP",
"country": "GB",
"amount\_is\_editable": false,
"merchant\_reference\_id": "payment link",
"template": {
"error\_payment\_url": "https://www.rapyd.com",
"complete\_payment\_url": "https://www.rapyd.com"
},
"customer": "",
"requested\_currency": null,
"fixed\_side": null,
"max\_payments": 3,
"status": "NEW",
"language": "en",
"org\_id": "b73f63ba-ee20-4070-a994-2c0d5f0c2f7c",
"merchant\_color": "",
"merchant\_logo": "",
"merchant\_website": "https://www.rapyd.net",
"merchant\_customer\_support": {},
"merchant\_alias": "Doc Team",
"merchant\_terms": "",
"merchant\_privacy\_policy": "",
"page\_expiration": 1716201269,
"redirect\_url": "https://qa.rapyd.ly/pay/STVh06Pg"
}
}
* Editable amount
* curl -X post
https://sandboxapi.rapyd.net/v1/hosted/collect/payments
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
-d '{
"country": "GB",
"currency": "GBP",
"amount": "100",
"amount\_is\_editable": true,
"merchant\_reference\_id": "payment link",
"language": "EN",
"checkout": {
"error\_payment\_url": "https://www.rapyd.com",
"complete\_payment\_url": "https://www.rapyd.com"
}
}
}
'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "4411af1c-f390-4d8d-baf0-e98e35c2bfad"
},
"data": {
"id": "hp\_reuse\_8eb6eddd298498fd0cfb145aca2efb70",
"amount": 100,
"currency": "GBP",
"country": "GB",
"amount\_is\_editable": true,
"merchant\_reference\_id": "payment link",
"redirect\_url": "https://sbox.rapyd.ly/pay/9j3n8vrO",
"template": {
"error\_payment\_url": "https://www.rapyd.com",
"complete\_payment\_url": "https://www.rapyd.com"
},
"customer": "",
"status": "NEW",
"language": "en",
"merchant\_color": "09a677",
"merchant\_logo": "https://iconslib.rapyd.net/merchant-logos/ohpc\_8df12e51102d26bdc7e2321209878.jpg",
"merchant\_website": "https://www.rapyd.net",
"merchant\_customer\_support": {
"url": "https://www.rapyd.net",
"email": "johndoe@rapyd.net",
"phone\_number": "55555555555"
},
"max\_payments": null,
"merchant\_alias": "rapyd",
"merchant\_terms": "https://www.termsfeed.com/terms-conditions-generator/",
"merchant\_privacy\_policy": "https://www.privacypolicies.com/blog/privacy-policy-template/",
"page\_expiration": 1699952336
}
}
* Open amount
* curl -X post
https://sandboxapi.rapyd.net/v1/hosted/collect/payments
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'idempotency: your-idempotency-parameter-here'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
-d '{
"country": "GB",
"currency": "GBP",
"amount\_is\_editable": true,
"merchant\_reference\_id": "payment link",
"language": "EN",
"checkout": {
"error\_payment\_url": "https://www.rapyd.com",
"complete\_payment\_url": "https://www.rapyd.com"
}
}
'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "346a0171-ead9-48db-8765-d79c404cda56"
},
"data": {
"id": "hp\_reuse\_8736c82276017fabf3953f34ae31e26a",
"amount": null,
"currency": "GBP",
"country": "GB",
"amount\_is\_editable": true,
"merchant\_reference\_id": "payment link",
"redirect\_url": "https://sbox.rapyd.ly/pay/7VhtZQ2y",
"template": {
"error\_payment\_url": "https://www.rapyd.com",
"complete\_payment\_url": "https://www.rapyd.com"
},
"customer": "",
"status": "NEW",
"language": "en",
"merchant\_color": "09a677",
"merchant\_logo": "https://iconslib.rapyd.net/merchant-logos/ohpc\_8df12e51102d26bdc7e2321209878.jpg",
"merchant\_website": "https://www.rapyd.com",
"merchant\_customer\_support": {
"url": "https://www.rapyd.com",
"email": "johndoe@rapyd.net",
"phone\_number": "55555555555"
},
"max\_payments": null,
"merchant\_alias": "rapyd",
"merchant\_terms": "https://www.termsfeed.com/terms-conditions-generator/",
"merchant\_privacy\_policy": "https://www.privacypolicies.com/blog/privacy-policy-template/",
"page\_expiration": 1699952396
}
}
In this section:
The number of seconds elapsed since the beginning of the Unix epoch, which was 00:00:00 GMT on January 1, 1970. 10-digit integer.
Search results
--------------
No results found
* [Prev](payment-link.html)
* [Next](create-payment-link.html#idp321111)
---
# Payout Tracker Link
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Client Portal Guide](client-portal-guide.html)
* [Disburse](disburse.html)
* Payout Tracker Link
* [Prev](viewing-sender-details.html#idp258657)
* [Next](payout-tracker-link.html#idp258688)
#### Payout Tracker Link
Share the status of your payout.
You can share the status of your payout with the beneficiary through the payout tracker link. By clicking on the link, the recipient will know where their payment is in real time, and that the money is on its way.
[##### Payout Tracker Link](#idp258688_body)
1. Sign in as described in [Accessing the Client Portal](accessing-the-client-portal.html "Accessing the Client Portal")
and navigate to **Disburse** > **Payouts** > **Create Payout** or **Disburse** > **Overview** > **Create Payout**.
2. Create a payout to receive a payout tracker link. See [Create a Payout](create-a-payout.html "Create a Payout")
for more information.
3. When you successfully create a payout in Client Portal, you are given a payout tracker link in the Payout confirmation dialogue box.
The Payout confirmation dialogue box appears.

4. You can copy the tracker link and paste it into your browser to view the Payout tracker page.
The Payout tracker page appears.

**Note**: The payout tracker link can be shared with the beneficiary.
In this section:
Search results
--------------
No results found
* [Prev](viewing-sender-details.html#idp258657)
* [Next](payout-tracker-link.html#idp258688)
---
# Mobile Version
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Client Portal Guide](client-portal-guide.html)
* Mobile Version
* [Prev](adding-virtual-accounts.html#idp268011)
* [Next](mobile-version.html#idp268030)
### Mobile Version
Access your payments, payouts and transactions on the go.
Client Portal for Mobile Features
en/collect-383798.html
Collect
Create payments, refunds, and customers using Rapyd Collect.
en/my-account-383806.html
My Account
Manage your account and transactions on the go.
en/quick-actions.html
Quick Actions
Request a payment, transfer funds, or use the virtual terminal.
In this section:
Search results
--------------
No results found
* [Prev](adding-virtual-accounts.html#idp268011)
* [Next](mobile-version.html#idp268030)
---
# Activating Your Rapyd Business Account
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Client Portal Guide](client-portal-guide.html)
* [Rapyd Business Account](rapyd-business-account.html)
* [Onboarding](onboarding.html)
* Activating Your Rapyd Business Account
* [Prev](signing-in-to-a-rapyd-business-account.html#idp266824)
* [Next](activating-your-rapyd-business-account.html#idp266852)
##### Activating Your Rapyd Business Account
Activate your Rapyd Business Account in the Client Portal.
The owner of a Rapyd account and all invited users can access the Client Portal.
[###### Activating Your Account](#idp266852_body)
1. Navigate to **Activate Your Account**.
2. The RBA Price Page will appear for the first time only.
3. Click Verify Your Account
4. The **Activate Your Account** page appears.
5. Enter your country and company name.
6. Click **Start**.

7. Complete the KYB Process found in [Get Started](get-started-with-rapyd-business-account.html "Get Started With Rapyd Business Account")
.
8. The **Set Up Your Account** page appears.
### RBA Pricing
* Rapyd Business Account: $99/month after a KYB approval.
* Sandbox testing available for free during sign up.
In this section:
Search results
--------------
No results found
* [Prev](signing-in-to-a-rapyd-business-account.html#idp266824)
* [Next](activating-your-rapyd-business-account.html#idp266852)
---
# Retrieve Apple Pay Session
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [API Reference](api-reference.html)
* [Rapyd Collect](rapyd-collect-363484.html)
* [Digital Wallet](digital-wallet.html)
* Retrieve Apple Pay Session
* [Prev](digital-wallet.html)
* [Next](retrieve-apple-pay-session.html#idp328264)
##### Retrieve Apple Pay Session
Retrieve the details of an Apple Pay payment session.
Each payment that uses Apple Pay has a unique session.
Prerequisite: [Activating Apple Pay](activating-apple-pay.html "Activating Apple Pay")
[###### Parameters](#idp328268_body)
[###### Request Header Parameters](#idp328270_body)
[###### Request Body Parameters](#idp328330_body)
* * initiative\_context
* The client's fully qualified domain name, without the final period. For example, **acmegeneralproducts.rapyd.net**
[###### Response Parameters](#idp328348_body)
* /v1/digital\_wallets/session/apple\_pay
* Retrieve Apple Pay Session
* curl -X post
https://sandboxapi.rapyd.net/v1/digital\_wallets/session/apple\_pay
-H 'access\_key: your-access-key-here'
-H 'Content-Type: application/json'
-H 'salt: your-random-string-here'
-H 'signature: your-calculated-signature-here'
-H 'timestamp: your-unix-timestamp-here'
-d '{
"display\_name": "Acme General Products",
"initiative\_context": "acmegeneralproducts.rapyd.net"
}
'
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "1d6372ba-530d-4195-be1e-ef50d91d0f91"
},
"data": {
"epochTimestamp": 1646630045189,
"expiresAt": 1646633645189,
"merchantSessionIdentifier": "SSHAF97FDFD687E4E308A5DF0D252842CCF\_916523...",
"nonce": "7c059ca3",
"merchantIdentifier": "2CA5870D7643C62D793F32133FFB35E85B69D1E23EEB49EBB989976C4A3F3367",
"domainName": "www.acmegeneralproducts1234.com",
"displayName": "Acme General Products",
"signature": "308006092a864886f70d010702a08...",
"operationalAnalyticsIdentifier": "name:2CA5870D7643C62D793F32133FFB35E85B69D1E23EEB49EBB989976C4A3F3367",
"retries": 0
}
}
### Note
In the example response, the `merchantSessionIdentifier` and `signature` are truncated.
###### Related Information
* [Customizing Hosted Pages with Apple Pay](customizing-hosted-pages-with-apple-pay.html "Customizing Hosted Pages with Apple Pay")
* Refer to this Apple Pay article: [Requesting an Apple Pay Payment Session](https://developer.apple.com/documentation/apple_pay_on_the_web/apple_pay_js_api/requesting_an_apple_pay_payment_session)
.
In this section:
The number of seconds elapsed since the beginning of the Unix epoch, which was 00:00:00 GMT on January 1, 1970. 10-digit integer.
Search results
--------------
No results found
* [Prev](digital-wallet.html)
* [Next](retrieve-apple-pay-session.html#idp328264)
---
# Monthly Flat Fee
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Client Portal Guide](client-portal-guide.html)
* [Rapyd Business Account](rapyd-business-account.html)
* [My Account](my-account-383783.html)
* Monthly Flat Fee
* [Prev](account-summary.html#idp267500)
* [Next](monthly-flat-fee.html#idp267540)
##### Monthly Flat Fee
The Rapyd Business Account will begin charging a monthly fee of $99/month after your account has been approved.
This charge will be deducted from your RBA Balance. You will be charged for each month on the 10th of the month. If there are no funds in your account, then a negative balance will begin to accrue each month.
**Note**: See [Activating Your Rapyd Business Account](activating-your-rapyd-business-account.html "Activating Your Rapyd Business Account")
for more information about account activation.
[###### Balances in Available Currencies](#idp267540_body)
The charge for the monthly flat fee is deducted from your available currency balance. The flat fee currency defined in your account will be deducted first. If you do not have a sufficient balance to cover the charge, the full fee amount will be deducted from your balance in other available currencies.
If there is not a sufficient balance in any available currency for your account, the flat fee will be deducted from the defined flat fee currency. Your account will accrue a negative balance. You will receive an email notification from Client Portal after the first failed billing attempt and negative balance.
After two consecutive months of a negative account balance, your account capabilities will be restricted. You will only be able to add funds to your client wallet. You will receive a second email notification from the Client Portal after your account is restricted.
If funds are not added to the client wallet before the next payment deduction, your account will be subject to suspension and automatically set for offboarding.
### Final Account Closure
Each month Rapyd will check to see if funds have been added to your account to cover the negative balance. This will occur after two consecutive months of a negative account balance. If funds have been added, the count toward account closure will be reset.
If the account balance is still negative after 4 additional months, your Rapyd Business Account will be **automatically deactivated**. You will receive a third email from Client Portal before your account is deactivated. This will happen after having a negative balance for 6 months in total. You will then receive a fourth email notification from Client Portal informing you of the account deactivation.
In this section:
Search results
--------------
No results found
* [Prev](account-summary.html#idp267500)
* [Next](monthly-flat-fee.html#idp267540)
---
# Digital Wallet
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [API Reference](api-reference.html)
* [Rapyd Collect](rapyd-collect-363484.html)
* Digital Wallet
* [Prev](refund-errors.html)
* [Next](retrieve-apple-pay-session.html)
#### Digital Wallet
Information on supported digital wallet providers such as Apple Pay and Google Pay.
### Note
The customer must open Google Pay in a single window.
Methods
* [Retrieve Apple Pay Session](retrieve-apple-pay-session.html "Retrieve Apple Pay Session")
- Retrieves an Apple session object.
In this section:
Search results
--------------
No results found
* [Prev](refund-errors.html)
* [Next](retrieve-apple-pay-session.html)
---
# Hosted Card Activation Page
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [API Reference](api-reference.html)
* [Rapyd Issuing](rapyd-issuing-365115.html)
* Hosted Card Activation Page
* [Prev](card-issuing-reversal-webhook.html)
* [Next](activate-issued-card-using-hosted-page.html)
#### Hosted Card Activation Page
Provides hosted pages where a customer activates a physical issued card.
[PCI](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_pci "Payment Card Industry")
certification is not required.
Methods
* [Activate Issued Card Using Hosted Page](activate-issued-card-using-hosted-page.html "Activate Issued Card Using Hosted Page")
- Create a hosted page where the customer can activate a physical issued card.
In this section:
All financial institutions that issue cards or process card transactions. The Payment Card Industry Security Standards Council develops and publishes regulations for the industry.
Search results
--------------
No results found
* [Prev](card-issuing-reversal-webhook.html)
* [Next](activate-issued-card-using-hosted-page.html)
---
# Viewing Payment Methods
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Client Portal Guide](client-portal-guide.html)
* [Settings](settings.html)
* Viewing Payment Methods
* [Prev](settings.html#idp250967)
* [Next](viewing-payment-methods.html#idp250977)
#### Viewing Payment Methods
View active payment methods using the Rapyd Client Portal
[##### How to View Available Payment Methods](#idp250977_body)
1. Sign in as described in [Signing in to the Client Portal](signing-in-to-the-client-portal.html "Signing In to the Client Portal")
.
2. Navigate to **Settings** > **Payment Methods:**

3. Toggle between production and the sandbox environment.
* If you are in the production environment and select **Payment Methods** you will see all of the payment methods your company is currently licensed to use. To add more payment methods, see [Request a Payment Method](viewing-payment-methods.html#UUID-60fe49b9-927b-e16a-05de-9e9e37367f06_N1692125156614 "Request a Payment Method")
.
* If you are in the sandbox environment and select **Payment Methods** you will see all available payment methods.
**Note**: To move into production you need contact sales, to add your Account Activation page.
4. You can change how the payment methods are displayed:
* Use the **Card** view to look around the payment methods by region and country.

* To view payment methods by row, select **Table view** .

* Under Table view, you can choose which columns to display, and select the **Customize Columns** icon in the top right.
* To filter the search, click select the **Filter** icon within the search bar.
###### Activate / Deactivate Payment Method
You can activate or deactivate a payment method by going to **Settings** > **Payment Methods** > **Supported** tab in Production. In the Card view, you can search up any payment method and click the switch on the card.
Once you click the switch to activate or deactivate a payment method, a window appears.
Click **Yes**.

[##### Request a Payment Method](#UUID-60fe49b9-927b-e16a-05de-9e9e37367f06_N1692125156614_body)
1. To request a payment method, navigate to **Settings** > **Payment Methods** > **Advanced** > **Request Access** .
### Prerequisite: Submit Your KYB
Your KYB for Account Activation should be submitted before requesting access to a payment method.

The **Request Access** page appears.
2. Follow the steps to fill out your requested **Country** and **Payment Method(s)** .

3. Select **Submit Request**.
A confirmation dialogue box appears.

In this section:
Search results
--------------
No results found
* [Prev](settings.html#idp250967)
* [Next](viewing-payment-methods.html#idp250977)
---
# Modifying Bank Account Details
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Client Portal Guide](client-portal-guide.html)
* [My Account](my-account.html)
* Modifying Bank Account Details
* [Prev](adding-a-bank-account.html#idp250517)
* [Next](modifying-bank-account-details.html#idp250573)
#### Modifying Bank Account Details
You can modify most **Reporting Information** and **Bank Details** values for a bank account.
The **Account Number** value cannot be modified. If the bank account number is not correct, delete the existing bank account and add a new one with the updated account number. See [Deleting a Bank Account](deleting-a-bank-account.html "Deleting a Bank Account")
and [Adding a Bank Account](adding-a-bank-account.html "Adding a Bank Account")
.
You must have Owner or Administrator privileges to modify the details of a bank account.
[##### How to Modify Bank Account Details](#idp250573_body)
To modify bank account details:
1. Sign in to the Client Portal as described in [Signing In to the Client Portal](signing-in-to-the-client-portal.html "Signing In to the Client Portal")
and navigate to **My Account** > **Account management**.
The **Account management** page appears.

2. Under the **Accounts and settlements configuration** section, select the three vertical dots for the bank account you would like to modify.
3. Select **Edit bank account** from the drop-down.

The **Edit bank account** dialog box appears.

4. Modify the values and tap **Submit**.
The bank account details are updated.

5. Click the **Upload bank statement** button. Upload your bank statement for verification.
[##### Edit Settlement Preferences](#idp250611_body)
To change your settlement preferences:
1. Under the **Accounts and settlement configuration** section, select the three vertical dots for the bank account you would like to modify.
2. Select **Edit settlement configuration** from the drop-down.

The **settlement frequency** dialogue box appears.

3. Select Daily, Weekly, or Monthly settlement frequency.
4. Enter the Minimum Settlement Amount.
5. Click **Apply**.
In this section:
Search results
--------------
No results found
* [Prev](adding-a-bank-account.html#idp250517)
* [Next](modifying-bank-account-details.html#idp250573)
---
# Identity Verification
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Product Guide](product-guide.html)
* [Rapyd Verify](rapyd-verify.html)
* Identity Verification
* [Prev](rapyd-verify-hosted-page.html#idp246382)
* [Next](identity-verification.html#idp246396)
#### Identity Verification
Securely identify your users. | `Enterprise`
[##### Overview](#idp246396_body)
Before you can assign contacts to user wallets, you will need to use Rapyd’s identity verification service.
Once you create a new user wallet, you will need to verify their identity. The identity verification process requires the following contact information:
1. First Name, Last Name
2. Date of Birth
3. Address, Including Country
4. Official Identification Document
5. Nationality
6. Selfie picture
[##### Verifying Identity Workflow](#idp246413_body)
[###### Step 1: Collecting Customer Information](#idp246415_body)

1. You ask the customer for the country of residence.
2. The customer provides the country information.
3. Your website back end asks Rapyd for a list of acceptable identification documents for that country.
4. Rapyd returns the list of documents.
5. You ask the customer to scan or photograph one or more documents.
[###### Step 2: Verifying Customer Identity](#idp246431_body)

1. The customer sends the images of the documents to your website.
2. Your website back end requests Rapyd to verify the identity.
3. Rapyd verifies the customer's identity and returns a confirmation to your website.
4. You notify the customer of the confirmation.
[##### How Identity Verification Works](#idp246445_body)
### Prerequisites
To run the examples of this use case, you must create the following ID in your own [sandbox](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_sandbox "Sandbox")
:
* **ewallet** - Run [Create Wallet](create-wallet.html "Create Wallet")
for the customer's wallet. Use the **wallet ID** you get in the response. For more information, see [Creating a Rapyd Wallet](creating-a-rapyd-wallet.html "Creating a Rapyd Wallet")
.
[##### Getting the List of ID Documents for a Country](#idp246458_body)
When the customer requests financial services that require a Rapyd wallet, you ask Rapyd for the types of acceptable identification documents for the customer's country of residence.
For that, you'll use [List Official Identification Documents](list-official-identification-documents.html "List Official Identification Documents")
with the following parameter:
| | |
| --- | --- |
| Query Parameter | Description |
| country | Enter **US** as the country code for the customer's country of residence. |
###### List Official Identification Documents Request
You ask Rapyd for the types of identification documents that are acceptable in customer's country.
* * Request
* // Request URL: GET https://sandboxapi.rapyd.net/v1/identities/types?country=US
// Message body absent
* * .NET Core
* using System;
namespace RapydApiRequestSample
{
class Program
{
static void Main(string\[\] args)
{
try
{
string country = "US";
string result = RapydApiRequestSample.Utilities.MakeRequest("GET", $"/v1/identities/types?country={country}");
Console.WriteLine(result);
}
catch (Exception e)
{
Console.WriteLine("Error completing request: " + e.Message);
}
}
}
}
* * JavaScript
* const makeRequest = require('/utilities').makeRequest;
async function main() {
try {
const result = await makeRequest('GET', '/v1/identities/types?country=US');
console.log(result);
} catch (error) {
console.error('Error completing request', error);
}
}
* * PHP
* /utilities.php";
include($path);
try {
$object = make\_request('get', '/v1/identities/types?country=US');
var\_dump($object);
} catch (Exception $e) {
echo "Error: $e";
}
?>
* * Python
* from pprint import pprint
from utilities import make\_request
country = 'US'
results = make\_request(method='get', path=f'/v1/identities/types?country={country}')
pprint(results)
###### List Official Identification Documents Response
Let's take a look at the response.
* * Response
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "c34e0097-47cf-426e-ad7b-9181310824df"
},
"data": \[\
{\
"country": "US",\
"type": "DL",\
"name": "Driver's License",\
"is\_back\_required": true,\
"is\_address\_extractable": false\
},\
{\
"country": "US",\
"type": "ID",\
"name": "Identity Card",\
"is\_back\_required": true,\
"is\_address\_extractable": false\
},\
{\
"country": "US",\
"type": "PA",\
"name": "Passport",\
"is\_back\_required": false,\
"is\_address\_extractable": false\
},\
\
// ... \
\
\
\]
}
The `data` section of this response shows the types of identification that can be used to verify identity in the US. This edited example shows only three types. Each document is described with the following parameters:
* The `country` is **US** .
* The `type` is a two-letter abbreviation for the type of document.
* The `name` is the type of document, spelled out in words.
* `is_back_required` - Indicates whether the process requires both sides of the document or only the front side.
* `is_address_extractable` - Indicates whether the document contains the individual's address, which also can be used in verifying identity.
Your website shows the customer the types of identification documents he can choose from to verify his identity. When he chooses a document type, your website asks for the front-side image, and (if required) the back.
[##### Verifying a Customer's Identity](#idp246549_body)
When the customer provides the selfie and document images, you send an identity verification request to Rapyd.
For that, you'll use [Verify Identity](verify-identity.html "Verify Identity")
with the following parameters:
| | |
| --- | --- |
| Body Parameter | Description |
| country | Enter **US** as the country code for the customer's country of residence. |
| document\_type | Enter **PA** as the code for the customer's identification document - his passport. |
| ewallet\_id | Enter the wallet 'id' that you received when you created the wallet in your sandbox. For purposes of this use case lesson, we are using **ewallet\_4250f5f5f9492a9425cb2061fac8c2f1**, which is the wallet ID we created in our sandbox. |
| face\_image | Enter the base-64 encoded image of the customer's face. In the example below, we show just the first few bytes of the multi-megabyte image. You can use the test image that appears in the **Test Image** tab, below. |
| front\_side\_image | Enter the base-64 encoded image of the identification page of the customer's passport. In the example below, we show just the first few bytes of the multi-megabyte image. You can use the test image that appears in the **Test Image** tab, below. |
| reference\_id | ID of the identity verification request. Must be unique for each request. Defined by the client. Maximum length: 36 characters.
In sandbox, to simulate success or failure, the string must contain one of the following values: success, failure. For example: 12345678success |
We will use the default MIME type of **image/jpeg** for the two images.
###### Verify Identity Request
You ask Rapyd to verify the customer's identity.
* * Request
* // Request URL: POST https://sandboxapi.rapyd.net/v1/identities
// Message body:
{
"reference\_id": "555",
"ewallet": "ewallet\_4250f5f5f9492a9425cb2061fac8c2f1",
"country": "US",
"document\_type": "PA",
"front\_side\_image": "/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAkGBxMk=",
"front\_side\_image\_mime\_type": "image/jpeg",
"face\_image": "/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAkGBxMSEhUSEhIVFhUXGBoVGRgk=",
"face\_image\_mime\_type": "image/jpeg"
}
* * Test image
* /9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAkGBxMSEhUSEhIVFhUXGBoVGRgYGBcXFxcYFxcWFxcXFxgYHSggGB0lGxcYITEhJSkrLi4uGB81ODMtNygtLi0BCgoKDg0OGxAQGy0lHyUtLS0tLS0tLS0tKy0tLi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLf/AABEIALIBGwMBIgACEQEDEQH/xAAcAAABBQEBAQAAAAAAAAAAAAAGAAECBAUDBwj/xABGEAACAQIDBgMECAMFBwQDAAABAgMAEQQSIQUGEyIxQVFhcSMygZEUM0JScqGxwaLR8AcVFmKCJJKTwtLh8UNTc+I0RGP/xAAaAQACAwEBAAAAAAAAAAAAAAABAgADBAUG/8QAMhEAAgIBAwICCQQBBQAAAAAAAAECEQMSITEEQVFxBRMyYYGRodHwFCKxweEjM1JTov/aAAwDAQACEQMRAD8A9UpqbNVbaONEUZkIuAVza2yqzqrN/pBLfCriktUxoZffBVTO8WWxUEFwCLmVmHTqIow9u/EVepvW5jp2VC0ahyBcLmy5vQ2PagpJgssUqB/8dkxNKMOSqsEI4guLi4JGXodR6irMO97tGJBh7hpBClpPfY3uV5egINz5HwoLJF8AUkwvvSoc/wAToMWuFI1K6tfo5GbIRb7ve/cV02zvBwZY4I04ksmoBbIoGurNY2906AHpR1olo36VC2K3nkiieV8OQY5OG4z9yEKshy86nMNbCoT71smGTEmDkc9OILgH3T7vfX0oPJEmpBZSvQbjt82iiimfD8sq5ltICbWBF+XwIqe0N8Th5VjngK3AYlXzWBJHTKL2IOnlUeSKA5IMKasGXbxE8cSxhkkUyLIHFsi5cxtb/MO+tVMNvO+IdlwkHEVPekd+GnkFsrE/L9qOtBtBTelQzJvBN7MLhXLszqyk5QnDtds9iCDcWPftVDC75ySoXjwpIV0Q897ZyBewW9tetTWiakGtKhjD7zNPI8eGhEgj952fhrfXRbKxbofAaelTg3pV45WWM8SEEvExCsAt8xB1B6GprRLQS09qGNi71rikfhp7VdeGzAZh4hrft1t43rd3bxv0mFZjGUDi6gsDdT0OnS/hQ1qtho/u4LVKrTwjtVTEEJqxAHiSB+tFTTGcGhUq5POoFywA8SQBXSNwRe4sehuLH0otipCp6lZbXzC2mvbXprTRyxk2DqT4Ai/yoa0PoY1I1NGRtFdSfAEH9KhItjb4/CoppiuLQ1NUGkAvqNOvl31rn9JXLmDDL43Fvn0o2A70q4R4hT0ZT20IPXpXUt11GgufIePl0PyqWGiVOBXLjLlzZhl8bi3z6UoZlb3WB9CD+lSyUdqbNSNcS1QiO9qpbZNoXuqsNAwYZlKFgHzDuMpartKiAFU2iBMrZYgru4zCPndOI0Qe5IzLw447lc1goJGW1aW7+MaRCrx8MrYquUpaJheMWPhYobacl9L1r3pidKVIB5ltzZUkeMeCJQVxY0B91ebMzafcIY/6hT7sMUzPiSFjwedVube1f3h5kC4H/wAgr0MxPe+ZL/gP/XUfo7G+sdidfZnX+PypFip2hFGmeWbSw7iCLHcWHM0nE5ffDsQ2Utms2SwFgBYVu4+XCbQKZpBFIIlkD5ltqTmjYE6lSL20OvrRqcKbW9lbrbhm1/G2emfA3FiIiL3sYrj5Z6nqufBk0nmL41/oMySS504qrC5P1mVufJfVlAAPe1yO1dNorGNnQMJ2LNlGQyAqCL5gE7Zbj0uK9NbDMRYmOw6ezOnwz1E4Q9PZf8Pv/v0Hh9/agaDzDefFxtg8EqyKWEQuAwJFkQai+moI+BomnGHxeLkiMiMHw6AZWUnMHka6/wCYAg/GigYLyi/4f/3qSYQjUcIHyjI/56ZY97G07nnezNlzpiWwbt7sEwjbtaTIMw8rjp2N6s7oz8GHEYd5BBMrl+bLe2VRcBtGHIR6EWo9OHYsGJjuLgHhm4B6gHPpew+VQmwRf3xE34oif1egsVcMChQK7n7YlmhmmxEoyKcouFVRZQScwA7m1Uf7NbNFOmYZiR3F7FbXt60djDtbLeO3S3DNvS2emjwhU3XhA+UZH5h6Kxu1vwFR43AncaQYV58NORHICHGYgBgBlJUnqNAb+frWfERJNjsWpAg4UsYc6K7sAAqn7ROUn4ivRZ8HnsH4TfiizfK712GEZhkPDK+HDOXy0z2pfV0kvAKx7UAe1djlYotoYRhmRFMmWxDAKAzadfBh4a9qM9yVtgcN/wDEv6VoQ4MqLKYwPARkDz0z13wsORQgygDQBFyKAOwFzS0rtF0cel2WFoP3lxeG+nQx4qSBY44JZSszRgZ3eOONgH00VZh8aL81RMak3IBPpULTzbCYAyyQxRRIIs+JxUUcqERrEMsEfIByhjNI6i2gPQWtXXYGGzPhxyK0mJmxEsUaZEjbCxfRmjA75ZTES/2jrYAgV6JYXpKg62FEB51g8R7AhhaHZnGLjs0sDSjDr5hIlWS1uskJHSobLaLDYYssmAmkw+GZ/ZKpxBdI7ZiwckksbE21Ledeksg8BrTJAo6KPkKBAE2RsIw4nBwOkEfBj4kbxx+0maJODIjSH3bCRWI1L36jKb6i7UhXaM/FniQpFDCis6K2Z2klewJubhoflRXl8q5tEpNyov42FAJ5+4ieUS4gr9Hmxk2bPYRs+HRcNDG5OhUtC7gHQsq97Vy20+EJjEBw8ccuJLu0uX6NL9HhJLIMwD+04SkjqUPW1ekFARYgEHtbT5UzRKeqg28ulSyUee4zZ6YgQQRSYYF3kn4mFUKo4EZWNtGa7JPNE3XsBbrVb6UmKSWWciBpZoYVMiq8QkwqLKYpQxAK8dpktcXK6G9q9IZFA0AFcXCkWIFj27H1FMlYrdHmk+KhYRp/skObFO8hZg2Fn+jwhc6AlQRneIG3242uWtcnW7eHjMWZDhjcnmwyhYzbTWzG5GverxRTYFRYadB+VWY7AWXTy6UWmibMryREVUYa1qlr9aqNCL0yl4i6PAhVfaMhWN2U2IFx/Rqyayt65imEmZTZshCk9mOik/EirY8lE70ugL2jvrMr5InXlNnkZVKpZgGAAtmI1uSQARbU3AwYt+8TmYjHhiC1gY4RGbWsobhLe+v2hbTrqaHdvzHiR4csGRMo0OjFnNhmy3IAsAe1z61ob6bSZMOsRhiSNjlXK5YhktmsAoAVTcedxoNbNJ3b8CmFx0x5v3/f+A62fvXM7mJ5FEg+6FKNYXOW4uCPA9tQWsbaX97Tff8A4U/lXkG721GEWW/1TB101NkZlQkDNlBQi3Szm+letw4MkZmOVeuvU/CrYZcSjc6RmzYc7yKONt/F/iOn97Tf+5/Cn8qQ2vN9/wDhT+Vc+Jh7EIxdh9m+UnyXSxPleuSyxN0WVR4mxHx0FvnVX67pr/wO/R3W1d/+iz/e8/3/AOFP5Uv73n+//Cn8qqBAdUYMPK4/I1GteOWLIrhTMOX9RidTcl8WXRteb7/8KfypDa833/4U/lVAVJas0R8EVeuyf8n82bO7e3GmeSN1a6E8xCgEAhbWHiSSDrfXuCK3DOuvMuhCnUaMbWU+BOZdPMeNC+5WHs0rZf8A1JNchXVmQkBs1iCFT7OuW960U3fQOGDsbScWxs3NeImxIuCTELnqczeNY0oOT1OvgdzDfq4s0ZNoRKodpFCnNZjoORWZiSegCqx18K4PtuAC5kC82WzKytmC57FWAYcuvTW48RXGXYQZBE7sVGfLYKCM6SIde9uJcegp8Tu/xipmllcq2YAcgFjGbAJaw5D4nnbppaxR6dPeT/OO3z4LFZb2pj1w8TSsGNrAKouzszBERQe7MwA9azhvQRZfoc5nzmNoA0GZbRiXMGMmR1KEWs3W46itLbeyjiIWRWyPmSRGtcK8UiyoWHcZkFx4XrDl2LjRL9I4uH+kGQubpJwVTg8FFUBszEasSSLknppWBu2XcIuLvxhy0Is4WZ4URzYC+IjeSPML3Hu5T5kU+H3uWSWOJMPM+ZEdivDPDErvGhZM2dhdDmZQQosSay13F0jjMt41VFJsQ7ZcLNAWFvdbPKHHhlqcO5c/+yhpoG4HBPEMR46NFJnk4MgIIWUWVg1wNet6DVBTbNCLe3/3cJPDaZcNq0T3la3KBE7HQEG/Tz0NcY9+4WRikcrtxMiIDFeUHj2dSXyqLYebRiDdLWuRW/szAGIzEkHiTNMLdgyoLHz5fzoLX+zpgrkPCz5kyLIjNEY0ixEK8RCfftiCxy6ZkB7mlGNubfOBXnjKS3iFhol5XBgVokXNcOHxEK2YC5fTQE12G8yrBiJpYZY2wwJlhYoXsEEgKsjFGBU6EHqCO1Y53BbiO/HGiAQtlYsJBLh588ovZrSQDpYkOQegrptDdrGTLOHxEIbEkpMFjbIIeGsaiMk5s62drk2JkNxoKKFYbSioK1SZrjwqK2ooLOsbXpzUUNJmpaDZOmBpg1TBoMILx7ySMFX6Ookky8IcUlGDmSxkbh3jI4TGwVuosT2qJvapdY2iYFsoBzXBfiyRSIDbUrwyw+8LnSxokXYmGCsgw8QVyCwyLZipzKTpqQdR4GuqbMhGW0MYy5ctkUZeHmyZdNMuZrW6Zj41v9d0quoP5v7v8777VuMvEEJd7mRQXgVSyxyKDKxXhSrKys5SJipHCa4CsNdGIBs23N7pIFhYYViJowwJaxV21ERyg3I09b6dKKotjwR+5BGvNm5UUc1ioOg62Zh6E+NOmCjUKqooVPcAAASwIGUdtLjTtVfUTwzjWKOl+PP9sswtQneRal4cEcBNI8SNImRioLKTcqSASt+9qRf0/OrJzVXddeg+dZwXb2I1m7ywGTCzIDYlCAfA/ZPwNjWnVTa31L/hNaIq2jJkdQb9x8+bdwri0ouW1zoou6WdiL6WzDUEC9soOo1rN3nwroMOrs3EK5uDkRQhY6kFLBizDwvpYnSvVMfshZGEgJSQEG41DW6B10uOnQg2Fr20qlHsKdpc5nUsxI1VytmGUqEz6DUkC5saefTtWZMfWRdePh7/AJAnu3sl2KQuAHmN3BFyiAFSdPdYAue+pRdCRXqm02UC128r9T8/dHam2LsSPDZglzays7EF3sNBYWCrr0AHW9tSTm7wbSjVsrSBW9dR5eWlcTNk1s9Dgx6EQjgLtoD8r/nYX+Fass+QqjnMD0vewPgddDVLYm1YlBfMhA63Yq3qCBb529a5LK2JkLRozN2PXTzPl/Os1mqjchw9zmRrN5jQ/vS2lhOUSBQD0YDoPAjyrjPh58OmbQkeNz/IX+NWNhbWXELqB3Vh2/PX56/vp6bM8ORS/KMfWdOs+Nwfw9zMkUhXXFRZHZfAkfDt+Vcq9SmmrR4qUXFtPk7bjyWnmj5AvOyhGYknie0aQFhrcqAQtgc4zG1EsccvtgW1JPCNhygxr0trYPmOuvwtQ7uWAZJDc5w0wtxEYW4kf2b5kOg6LbmFySBW9gc7mZZM+UsVW4ytl1BKslrA9tSwsCTc2XC17T2/H2PQYf8AbiCMGwXKqP7ucIBhxPETC/0mRJQ0kgvJlk5Q13cqWzi/TTp/hjFFlyq0OsbRnMrcAJPtKWGNgGNwizYdSoJFiVBIF6ns6KeJU+jsxZm2gG40s7rkimaOKxJYghFW3jqeutQXEsWUmTEfSg0QVC0uQ4U4aMu2S+QrrIS5F+ILXvYVlfJpXBPBbGxRmwsrYUiUBMxYxPHCDLO0mVw4kjdRJ0XOsnKCOpFL/DGIZEiWCTDtlgSdw0eaadcTA7YlSGOcoqSvnYAniAW0sN3+zfirxFmLqeFh3CNLNMpDoxadXm1BZiUaMABTF3zA0YtICdDQ7katcmVuZhZosNlxChZTNPIwUgr7SeRwVP3SGBHex1rdGlQV6TGlHJs1cmapNrXMJp1ooDG4h70mv4VMDxp2NNYtEVJtSy1ImnvQsNDhdOlMWv2rremJpbGo4h67oa4ldamposCtHakKgGpFqUJM1zMdOTSBok5Ilarve9WmNVJJNetCxkiBFVNrj2L/AIauVT2v9TJ+E1rh7SMWX2H5MDqsYAe0X4n8jaq9WtmITIAPP9K2dQ/9KXk/4OJ0qvPDzX8kN6do/RcLnH1jmyjzP2j6DWvM8IodryczMbknuaOd+8MZpVQH3eUD8Qb/AKL/ABoVwEIhktJzAeHb515lcHtorfcMN3NjwAq5QN3sdRf0NGyy2ACqAPAChTY2PgsQhB7gdNfCrU2+WGjHMG/Rf96q43ZfNRq0EGJGZSD3FefbMl4E8l8ws9mFvs9Q2vkOv8qJ9mbyR4g2TL8GB697A1V23ETK4XrYE6dUYWOvkyn/AHqkuRUux22yqkpKhBV1uCOht3HqCKzqtQyZ8Dhz90Bf4f8AtVa1el6GerBE8X6Tx6Opkl5nbc2L2srnsZFHLEOVmjawKuXtcE3IANxfUUUSY6NQWLghWCHLdiGJAC2W5vc2tWJupgmUu/EurM91yINSUKkMBm0AINyb3vpar8mzLlyJDmZ0caCwMb51Fu/Wx6aAd7kpphrep0dHA7xRLEe2oQQRIDm8mOXmKc+nJzKV5raqR1Bq9hdqRyZlRrsL3BDDoxUkXAzDMCLi+tYI2EpDqJWtKCJdFPEBkkdrfd1lcadiO4vV/ZGxo4HeQPctmBACj35DJz294gkgX6AnxqZYdOotqTvt+V+fQ0wcuCU+8OHikGHkcq+UMeVsi5hIy5nAstxE9r/d8xeOydrR4kMYywykZg6tGy5kEikhwCAUZSD5+tUto7rx4jFriuKAq5c6ZQSTGsiqM+awX2gLKVNzGvTW77A3WTDXZ5mZ86seG0kSHLGkaI0fEbOMq3ysSNbAAAAY06GcbLKb1YRljdZgRNKYY7AkyOHWMlR3QMy8/TUa6i97aO2YoGiSRwGmcRxra7MSQL2HRQWFz0Fx4is5tjjhlOL/APt/TL5fCcTmPr5Wv8bdq7YjZcZVVEzC2ITEEySNKboyvkUu3IptoBoPClHsgu9WHOYBpCQQoAikJkLSNEOEMvtBnRhcaaX6WNWE3gwzHDKsl2xQZoRYgsEQuxIIutgO9tdKw/8AB4zTOs0edyMns2yxgTGc3Cyg5ix96Mx262uWJ64HcqKF8LImIkBgy393LIqRSxgAW5BeZ2IBI5mHe4hAmPrXRUplXvXWmbAkQyVByFBZiAALkk2AA6kk9BXWqO18AuIiaJywVha69fLrobHWx8BRhTklJ0iNFqadUF2awJVbnTVmCKPUswHqa6XrE/uAXkJlY55IZdQNDBPxwNOpOik+Cr3GtLD7qrG0ZEg5JM4tGOnsbjVjqeCLsb9eXLYWvWLC17e/k/D77fUFtdjc2njDFE8gRpCouES2Zj0AFyAPMnQC5oYw2/AaXCoYgBPDh5XPE1Q4oEIqjJaQBgAxJXRgQDY1obwIC9j3S3zvQsm68F4ScxEKRoAcpVxCrpGz8vUB26WBzag6UixbXZlfVVJxoL9obdeLEQx8JDDKwQS8UZi2SR2KRBTdECczFltm0BtTbD3k+kpO6RN7ORkjUsoecCKOVGXNYLnEgsCdARe2tg2fYeHWUMvEC5DFwUESwZGJLplKZlDEknKRc2v0rphd3MOhcpFlZyWV+RjExRU9izDkPKD06/AVSpY7qy9vIlek0sf/AGgtACJcMvEV5VcLMWjCwRRyy5JOHzOOKI8pCjOCM3S+jtLfDhNiQYGtCsBQswUSnESvCpFgSsYZfeIJIuQp0uLHc+ExLA0kzKl1FzHfI2XPGbRjlJUEn3ri+aiLB7CimM+YupkSFbqQChgkeWJ00NmDtfW40GnW9rxUrKYdQpS00EOxNofSIElIUFrghXzqCrFSA1gTqp6gEdCAQRXaRNa57JwC4eMRqWYXZizEFneR2kdmsALlmJ0AGugAru7a9Kq4NaIGqm1/qX/DVs1T2wfYv+GtEPaRky+xLyYIVc2S9nv5EfMgVSvWhseHMzdha3zP/Y1q6x1gl5HI6BX1MPMy9r4gDExf/wBM2vYlRmAH+kv8vKgqbZbPM6SEkKSP+/npW7/aBieHBGy+8kiuO1uZvy5iPjWGcfmkD/etXnY3otHslWqmWsNstYsVh1VmVXYZgDpboDboOnaj7Gbpw8Quuhvp6HqK86O8UYxKsyXKlVDWJKgXva3iT4dq9Ow+03xDWVAqZQQ5bmLeGXwt39aR3yy5JduDth4kiFsov0vbXwGtZe2doCN2YC7FAo8Apaxv8SK08SeW50Ph50FbTx4E2Q/eVb/HUfpVVtsdpJBTsjDBoDGBbQso87lgP1FZ1608NPwyp8Ln5O4P6VT2jDkldfAm3odRXb9FZNpQ+J5f05h3jkXl9v7NzdkcjfiP6LXIbEZUxKrJZpxIFNiMjOZSG69QZB0t7t+pNd91/qm/Gf0Wru0Is8bqNSyMo1K6lSBzDVevUaitGSclKUVww9Mv9GIK7C3XljxGHlIjQRliwRgeW2KCooWJOpxAYtoDl1BKhjyXdDECWRwYwGnMt8wLWO0Y8WtgsSkERqRzs/NaxUXusFuZIVLEIjJCY4lAjW5LYu6O0aARqyzJfhgAmxty62P7hxMcnGhSJAoPDw4YcNSfpXDsQoClDKjWAKjiSAAkKayvk1rgWC3YnXDYmAph0MuFGGUofrJBHInEkYRqwDFw1mLsCz69LttDdHFuz5MRGQJ/paPMpdzLHh8NFCGWLhqtmSXm1sAnKxJtUXdHFqgjEiELGYBcsA8Z+kOpsSSGRnjUEk8ufyrUxO7ErYaCGILGUZ82kSWU3lXKMOiJ9dHDcBdRe9zrUYUZU+4s7PK7GIq8mLlC5n0+mDEK4vl+6MKNPCTyvCDczEggsUkbPmY5lBYLG0MZ9rDIt8gjB5eoOvjr7N3exKcfiFGE2HERAYgh4kVU63Uh2aZibC2YA37cF3am0DYeE24C5g4Byxi7MBb3k+rjHRLFxqbUE6I1ZobB3deHFNiWKEP9I0GUGPiziRQCqAyBlC3zk5CvLoxtl4jdbFSYTDw+yjlw2GeBWEjOrs0UUXMMi2RlWQEa2zKRciu2xN2sVE0ZPCDIZWEpGezOipYoGUsjHiSMAQWZ4yTdCD1/w7iswJMefiTOZszXCTRFWUL7wu5BADWAUacqVAhbECAB4AD8q6ihjdHYs2HZzLkF4oEOU3zPGmVyTa9hoovrYeAFFAFRkQxFQaulq5OKiI2OKYreo2rolFoCZgbcHtP9I/U1nlwil2NgAST4Af1+VaW3vrf9I/U1gbwRFoAgNsxufRbm37/CrMzrEjHhin1D91lPZuP4shKxu33dAB5ak2HxrVXDSxRtIcpOpKXv5nWh7drHohC5XLE2BAOVj2APjRPgtoNKSpgZV6EsR+nWue0dbsMJg6rIPtDX1rV3f95/QfvWHgY8odOwysB4e8D+35Vt7v8AvP6D9TXQxy1YTlTho6nz+xtNpVdr3qw9UnveqjYmdQb1T2v9S/4a74ZNKr7W+pk9DV2N/uRnzL9kvJghWvsQhUdibC4ufAAEk/nWTWjj04UAQmxY3P6t+Qt8Kt9JZFHDp8Tn+iMTl1Cl2X97ABvtiuKVA90mRf4TYfPLQnsrF8oQnVenp4fCiXefDMoVj0zs1u+pyi/mQPzoLkXK2nUGuPi3jR6TI6dhQmGZZFMcaMbA3Ynr6AUb7JjxDLe8EelgFDvb1uRXn2x9pgkLISO2htRxs7bWFw6EqmY+ZLH5XpJrtRpxyVWXdobYMaZH1cG2n2ibZQPifzoOmVmaa/vIVY+t9f1rd2ZHxZTPINLkqvgT3PnWJs6YPi51vpJdL9r65D8wfnVWnmhpOkr7hphM0ixt9luvzN/2NFG0cMJ4wRbiDUdifEH+uooM3QxDNFwdAykmM9iQNQT56CrWE2nOkjCSwAOXm0sb2tfSx/8ANNgyyxz1R7GbqMMc0HCXcKt2oyI3DAg5zodPsrXR9qQ5+Hn5uJwrWb38qsR07B116a9etWcE5sQwsb2t8BXGTZ8ZYsQblxIeYgFlEdri+v1SfLzN+1jyRyNzmnv4HMji9VFQTujlgtuROGNyoU5btaxN2FhlJIIym6mzAakVegx0bsVR1ZlFyFIJAPQnwv28azJNh4Z+pLHksS+YqBnyBc17jncC9+vkLXcFs2OJmZMwLgBgWJBCDKuh6WGmnbreny+o3cbvt9P8liTK27u80OMNolkHskmOcAWDs65DZjzgobjtca1uXrE2HsbDYW7QaZ+UksCCVUA/Gya+hrVikDC4II8Qbj51lGIYvHxxfWMFuGboeiKWY6eABqni94cPGoZ3yho5JlJ5brEUDgZrc3OLDvrVnHYaORcsguLMLXI0ZWRun+ViPjVDEYTDiwchbpNFzPYlcQyvN1OpLAG/atGKOJ1qT99fHj6fUVstnbMIbLxAWzKmUakFjlF7edwfAg1GXbMYxKYXUyOufTLZV57EgsGN+G/ug2y62uL1cPsELIzlzYtmRQCuQ8QytqSb3Ym+g6mpbV2HBLIJ5r2ChXUlRG6rxMnEuL8vFktYgc5vewsmZY016t2FX3Kc2++FV2Q58yzDDj3FDOTMvKXcAANBKvMQSQLAhlJJxQom6OEKzcOR1Sa+cI6ZTETMXjHKfZsZpST7wzaMuVQChXB6EG3h5gEfkR86pITNQpE0qagDUlpE0ymiCzC259Z/pH6mhzenEcKFXHUFWHwPN/DcfGiLbhHF/wBI/U9qEN8oy6kj3V5R+VzUzyWiKKMEH62cjLwG0sjxclwrhrg2A8NfQmjR9oKyFsy6a8pvbr8+leX7MxwQhW1W/kSPS9FxxomC2VsqjQdWdvsiwHj2rJOHY6OOdqzS3fxYe57s2U/EDX870UbDQhnB8B+9AO7WJsALgEovXs65lHzAo63exTNmz5SwABykG/ncduvyqzDNxTgZ82NSlGfgbUxt+lUlc/r+tdpmv8P3quyi517n+utPfiNXgTiaygiq+2ZQuHkY2ACknrb8ta7Rdr+ldMZGhQhwGU9QdQw8x3qRbTEatABgseJQQsEjgjRlVrAixurAgn5ircuKEnBMgZbOVswtfkNjqdf5it/G7QyjLF1tpbtQ7jopZEMrgswJuOtgNQR5/teq+p/crbLOnSg6ikkY+9ECuBJ0GY/HINPz/SvLMSdS3n+9HGM2iZSEOgAJFu+t3Prqb/iNDe2FR7LGALAEgeev6H51nw7OjTk4KGEw7N0FE+xdnEnQEmm2DgiEGb3u9u2ug+VGOxocuqi57dh8TQyuTdIvwRio6myWH2RK5WIEorAl36ZFFvmT+xoZ2xgkwuJkkgBEKABST0awAJvqzXu1h+VEk+1WjW87qGYWKrzm/gptr6WNYO3MdK4U8EKApEZcA5R9qy/ePUk66i9aY4koaWY8udynqRy2NtYxDKAAchksdQbAWFx0uO3nRXFtoyR2bKVPVJeo/A4/Qn59sXdPZQlyvI1yQCLW7gH969AwO7URtZBp41WsFMLzWh91Ma00TFr3VsoJ7gKtj+ddv7nQyFzlIM4xFioOoiRALnwdFe/+UDtWjFghDyjvr+37VU2ThpVaUyNcFyU1vpdj3JsLFRYW93oO/QwycItp1t8zLJWzFO7Ei3aOWxtKFyrYgCMx4RVubezDMddMxvpV3YWAkVuLIpU2kXI0jOygyBkFyWBFge+mnoOUWzJRbkAcMpeTiH2pEyvfL+EH3hdb5RcVDDYfaAK5nvZ9QTGOQrD7xAOoYTEWBvcaLcFehOcskXFzj8dn38L+vHuFW3Yy4t1cSRET9HiyvKWiQuY7SYd4FMbKqCOyZI8uRrAFsxJIJXu5g3hgWN8oKl7BTcKrSMyJmyrmKqQC1hcgnzqOxkmWICc3e5101Ha4XQd+5/YXxXNnDS2rvyGsp7Y2bxwAGykLIt9ftxsnQG1wSDfyqgdiyK0LKVPDSRCMzL9ZJG4sQpuAEtaw+HSu+1BiOIrQtyhTmUkAHlk6XNsxZozqCOQ6i5vQx8M7PA7qWyxuJAvDtnLREGzOB0VtRe1/OtmHUlFa1W/w2fl+MWTXIm2RiXznjyJ7V8gz2Ij5sh5cwJDM5A0JXIDYrp0xOyJ2gxUWfOZc2TMzHKSSbElTlGoFsptbq3QVcdDjSsqiRiHDWymJWGY4oAAlbBQDhib66Na5uCtv4DEPNFLCTlThI65gA6fSEeQ2uOZQisD3AYdWqdRKWmm4u/D4ETQ2zNi4mIMpSLLKkqOeKxaMSSSPcWgUSn2ngnhr1O1u5gZoxK04RWkdGyxszqAkEMPvMq3JMZPTQECg7C7DxYCZQ0UiGIu5kBE88SzEzlVY8jsUBvZiGIIAUVb3N2bPDNmnhYHhQqHJhcLlwuHjdM+fiX4iPoFynrfWsOkOtB4TTVyD1yxOKWNS8jBVUXLHoPWiot7ImosmmtWfiNrxKjSZrqriI5dSHMgiC+RzkDWkNrwgXeVE0zEOyhgvMbkX0Fkc3/ynwNWeqnV0wWjP24sRmsVDSZQBmuQBrbTp4+dCm8kckeWNhyyDTW3bVQO3b8qlv5jpY5hi4UaSMLGistihdpGQLmBv1IHQ1jYvbz4rhgx5XYql3kGbPI00YES5edM0TAtcW62NjVM4XsyKTTszdl4ZDI97aa5T1AHWioY5IcqJlzEXAHvdCCS32dD+tDqbNxEWVRhJHlmVyGFiqhRfKgB5m8ew0HjVhcDicTDHOkDDEKXQJyjOYpGQi50BDKb9uoqKEbsLnLTpL2AwCtiSktkudALgHS9rnyI0869D2ZsxYbsCSWFtTfSvNcRt54wkRw0bc7h2ZmeI8J1RmiYKCxBY/d1Rh4UQ4Hb08IxaPhLvBGJQkbszEM0irxWlNo7hM+hPLfqdCWkKrvcNMSbCqXMPd6eo760+Hk4yIx0zKrWHYsAdPGoG57H4WtVLaNCTL8C9/wA/67Vn7y4gphZjexysR8KswuCpGtumnbz8rGsffJ/9gxBLWtE2ovcW6nTXsKZMQGtgbbzuF6dL+NHjyQQoSWUG1yTqFuNCwv49B1PQXrwvZO0VU3OIjAHc2v4m3j18KM9i7fgmcBpHkIGjNovgcosAD4m2tMAHtoxt9LkMceSLldA3WwUJe4+01iW8z5Chvbci5iyDLqVBB62Otj3A/X0r0vejZHEjJjNmscp9eo+PbzArzHA7PbETiKxUKcrafVqpsfj19STSrHG7G1uqNjdDEtkfNdvD/wA0S7Lkk4Jtb6xxb0drD5i1Z23doRYaLhQKB9hfEkDUnxtf4k+tY+522CknBckhySO+upYH11Pz8qeu4pVwe1245eZuV+V76BRfQgdgP0vRxijxIeA31pYBT4LpeS3cZTl/FYedC29mxxm48YuGNnQdQxNgw8QxtfzPnRzuxstoIEeY5nyBST2Vb5VB8r2v3uT30jIUU2PiME6S4dc8YUAp1Ki3QePj+3gZbM3xSyh1IcjVSQpB10ytZj49O9C0m3pzJlwzAWOt1DA+R/8AIrc2fPtVhmaHBpb7ZV8vrbiD9aBArGJMhzWIFha6st/E2YA9b9qy5MZOJMuXQzhARE5XhZYWLM4JA96Rb21a3QK1W8BKzAl50mYaExqFRTb3VsT66knXrV5RVuOajyrICmH2li0BaRGYMqkXVSBmkKseVEy5RlurE+8pvYGup25iCwXglNYCTkkayu0HEU3AsRxGF7CwQnqGCk5qBNaP1GNu3jQr27g7DtmfKjPFlLojkZZCFLIWMdlXNm6C57jpqBXBNs4hUuYy7WJ91gCy5vZqALhmIsCSRp50SMaiTTLNj/60VNvxBvE7dnQt7C4BFrBySpbELbpq3sVPX/1RYE2DR3mxmJikjMIZkKsJAq5jdpIURwbdVLG4+6XP2aI2NMBSZJRl7MaFvcDRjsYSRE8jSXBdZIwqI4n0hRsg5HjDqWu1gEa/Nc2N39ozyTpxGkCNGjBHupu0eYgoISLg9farYjoe5YtSvVFbjp7EXFKpGo0yFY4NV9o4JJ4zHICVN+hKkXBFwR6mu4qQpotxdrkWzMfYMRDrd+dlcm6kgpMZ1tdbEcRmPMDe9jpao4rYKyC/EcScMxB+XRGOYjKqheuU9L8i+d9WlerP1GRO0wp0UsTsWN4TBmcAvxc4IziXi8cSA2y5uJzWtl7WtpVLDbo4dOCAZCkKhViJUxsQXYOy5fezOSQtgeW4OUW3QTUgKzytu2PZUg2REhhMaCMQ58iIFRBxPf5QPG50tqTVQ7tQGIx2Oa8xWXl40f0h3eXhSZeTWRgLdrdetbK04FKNYMtuXAVhRnmZYbKoJjF4w8TiFgqAZA8KNpY6HWxIqzhd2VjXEATTMMRnLh2Q6yaMwIQG9uUXJsABbSt7LTN0pZcBjuzNjhCBVXoigC/lYC+ngK4ytqbAW9T/ADqy7WJ/P06/tWe8+U2OvwH/AEmqO5oRahn1sLADqB8KfHwLLG6Ot0bRgT1Hhym9UgCo5h10v+dWCiMvMxAIILAkEE/dPjQ1b0Vg7Puvs8HM2GRAOt2YD82qvhIdiIxu+GD30CTMzX6HRXOtVDsrDx4dHMKz4ggRo895mecnJmJkuVXMCxt0AYjpRJEzmb6NBycoaWRQo4cZJHKLe85UhewCu3YA2RbsBo4HD4aaMNECyXI14g6aHR7H41FN2MIGZxCAzG7HM4zHpc2Ota8soVWdmCqoJYkgBQBcliegA117VMi3WrQA/itysBIbvhwe988nx6N5VlbL2HsWSXLh0jaQXsVeUg5dGyPmysR3AJtWxiIvpkrxH/8AFibLINf9olGpjPjEmmYD3mup0Vg1h2EmKjiQDJhgZGtoFkdDHFGO31byMR2Bj+8KFho5ndXCZg3BFwbg5pOvpmtVybZcTDKy3Hhdh+hrExUuNnbj4Mx8PWOIOCyuul52AkS6lgApGYhQWAbicpNwz40QGVht3cNEbpHlPiGe/wAy1dsVsWGX6wM/4nkP/NVwjXr5VI6aUQFbA4COBSsS5QTc6k62A+0T2Aq4DUKZnqUSybPXJmpM9hcnTxqpiNoQoFLyxqG90s6qG/CSdfhTRi3skK2Wqga4RY6NnMYkQuOqBlLDpe6g3HUfMV3YUzTXIlDKKlampiaFkocVK9RApGoQVPTUqgByKVPamsaNgoekKRWkL1LJRNamKgKlelYyJ1ICoZqWagEmxqLMMtcpZKqzYgL1IFVzZZAjiG0IvYm2mt7fzqhwx3v8wPyqy/MLhu99R/X9Wqsz+GtUpMu1IQXMdQfQ1ZaRQL218Sen9ftTk9ehNcXUEHT18jVKbuyswNk4GR5y0q+zieXgi45uLI7cXy5GVBexHtPEVtS7owSO0zSYhXZw5yTSRjSPh5QqmwBXqRr500KkC/8AVqux4gsRYG356elaIyIZ0P8AZ9gFAHBzEOZCzMWd7ljkdurpZsuU9QADfW+3srZMOHDCCFIwxuwUWBIFgTbyq6vSnq1EBXZEuLWCPDRYVo5FQCSefh8ISHWWRVRy0zM5ZrWVTm1YdK77V3Nw+Jw64aYysoZnY57NJIwIMkhAszXOYC1hoLWFqI6ZjUIDB3Iw5DBpcScyKje3cZimbK5C2GYZiALZQALKLCnl3Mw5Egz4glxcZp5XEb5AvFQMxu/KGzNfXpaiSok01CtgwdxsGxjaUSzNHfmmleUvdcvPnJ0HUBbAEA1OHcfCpbK2IQBnOVcRKqZXJZowqtZUub2WxPcmiMUxNGhbIwwKiKiKFVQFUDoABYAfCnZac0r0URlTGYbiRvGejKVN7kWIsbgWuNfGqE2y5LIFkGZUkju6M4Iky9s4OmXoSdOp71s0hVsMsocfnYSjFwWxmjdPaAxxszqMpzkshTmbNYgAtpbU2PbWjjt1y8jP7FgXzkOhJkvLFIFlPRggiyr10I6W1KgKa1DJllkdyGoDk3QdbHj6hY0N1azqigNmUNf3lQg3uACL6k1b2fuvGuQyrE2VJU0QA2klSQAMADYZWF+pzHzuSMKiEquibgf/AIMfm9uDmMp1XUCRAhsexYi7EeNtasYPdmWIcskRcIEztGQzDhRRsjEN7nIWUDoSunKcxVa1KpRAUj3TYFvbAAhhotr5iCM3iLAKR/lGvYWpt3dQRwiA0zEOrMWExkORiT0u4JPivQ30IbUrVAGJsLZD4dmZ5eJmihj90rYwhwSNToQw08je5N63KYrSAqA7jmlpSpiaIR8tPlplNOxtQJQI4XdOWMkRYto7mR+VcoLvGiIzgMA4Vkza6kGxPcvtjdEzTCTjsLQpDZhnJMbh+IWJ97rY/eObqAQTFyb26jt41QbGXcaEW0NIxzI2xsEySpLxiGDxsSyhmJi4moGiA2ew5bDU2uaxdqbmtO7OZwCTMTaMANxI1TnFwL8t2a2tyNBpRlJPfr0veuUpUi51NtD+3hVbHRg7C2V9GzjiZ82U3tbVVC3bxJ8fAKOgArQaRr6Hz0uOuvjTAC/9f0KRnt978qUdG24974/vVRjpf0pUqpXIg0nQ+h/WtDZppUqeBFyaNNSpVeMMDTU1KmQjIjvUaVKmQrE1JaVKoAZqQpUqIBjUlpUqgR36CkKVKgF8jUx/r86alRAMhpUqVQAqcf186VKoERNPTUqCAM1RvSpUxCa0iaalSDHHCn9P3qhj+h9T+gpUqR8DooX0v6ftXRhyn0/elSpBjko5b+v7U4NKlSsh/9k=
* * .NET Core
* using System;
using System.Text.Json;
namespace RapydApiRequestSample
{
class Program
{
static void Main(string\[\] args)
{
try
{
var requestObj = new
{
reference\_id = "555",
ewallet = "ewallet\_4250f5f5f9492a9425cb2061fac8c2f1",
country = "US",
document\_type = "PA",
front\_side\_image = "/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAkGBxMk=",
front\_side\_image\_mime\_type = "image/jpeg",
face\_image = "/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAkGBxMSEhUSEhIVFhUXGBoVGRgk=",
face\_image\_mime\_type = "image/jpeg",
};
string request = JsonSerializer.Serialize(requestObj);
string result = RapydApiRequestSample.Utilities.MakeRequest("POST", "/v1/identities", request);
Console.WriteLine(result);
}
catch (Exception e)
{
Console.WriteLine("Error completing request: " + e.Message);
}
}
}
}
* * JavaScript
* const makeRequest = require('/utilities').makeRequest;
async function main() {
try {
const body = {
reference\_id: '555',
ewallet: 'ewallet\_4250f5f5f9492a9425cb2061fac8c2f1',
country: 'US',
document\_type: 'PA',
front\_side\_image: '/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAkGBxMk=',
front\_side\_image\_mime\_type: 'image/jpeg',
face\_image: '/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAkGBxMSEhUSEhIVFhUXGBoVGRgk=',
face\_image\_mime\_type: 'image/jpeg'
};
const result = await makeRequest('POST', '/v1/identities', body);
console.log(result);
} catch (error) {
console.error('Error completing request', error);
}
}
* * PHP
* /utilities.php";
include($path);
$body = \[\
"reference\_id" => "555",\
"ewallet" => "ewallet\_4250f5f5f9492a9425cb2061fac8c2f1",\
"country" => "US",\
"document\_type" => "PA",\
"front\_side\_image" => "/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAkGBxMk=",\
"front\_side\_image\_mime\_type" => "image/jpeg",\
"face\_image" => "/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAkGBxMSEhUSEhIVFhUXGBoVGRgk=",\
"face\_image\_mime\_type" => "image/jpeg"\
\];
try {
$object = make\_request('post', '/v1/identities', $body);
var\_dump($object);
} catch (Exception $e) {
echo "Error: $e";
}
?>
* * Python
* from pprint import pprint
from utilities import make\_request
wallet\_id = 'ewallet\_4250f5f5f9492a9425cb2061fac8c2f1'
idv\_details = {
"reference\_id": "555",
"ewallet": wallet\_id,
"country": "US",
"document\_type": "PA",
"front\_side\_image": "/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAkGBxMk==",
"front\_side\_image\_mime\_type": "image/jpeg",
"face\_image": "/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAkGBxMSEhUSEhIVFhUXGBoVGRgk==",
"face\_image\_mime\_type": "image/jpeg",
"request\_type": "store"
}
results = make\_request(method='post', path=f'/v1/identities', body=idv\_details)
pprint(results)
###### Verify Identity Response
Let's take a quick look at the response.
* * Response
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "70d9e1a7-416d-45ab-bfee-95788f8d1bbb"
},
"data": {
"id": "kycid\_6899d0a145c264bdb04fc7dc421a03f3",
"reference\_id": "555"
}
}
The response shows that the request to process the identity verification was successful. The `data` section of this response shows:
* `id` - The ID of the Rapyd identity verification request. This is a string starting with **kycid\_**.
* `reference_id` - The merchant's ID for the verification request.
Note that the verification process is not complete until you receive the confirmation webhook.
[##### Confirming the ID Verification](#idp246670_body)
When the customer's identity verification is complete, Rapyd sends you a webhook with the verification details.
Let's take a look at [Webhook - Identity Verification](identity-verification-webhook---sandbox-approved.html "Identity Verification Webhook - Sandbox Approved")
.
* * Webhook
* {
"id": "wh\_43f74f800f28020c8d6fb07300efe132",
"type": "IDENTITY\_VERIFICATION",
"data": {
"id": "kycid\_6899d0a145c264bdb04fc7dc421a03f3",
"state": null,
"images": "v1/kyc/identities/images?reference\_id=1244874",
"country": "US",
"ewallet": "ewallet\_a53642921c9d4bd8c9f35e7aa01aacf2",
"id\_number": "835714121",
"last\_name": "Doe",
"created\_at": 1549462299,
"first\_name": "John",
"reference\_id": "1244874",
"date\_of\_birth": "1984/07/31",
"document\_type": "PASSPORT",
"reject\_reason": null,
"request\_source": "WEB\_CAM",
// ...
"expiration\_date": "1848614400",
"face\_validation": true,
"document\_sub\_type": null,
"verification\_status": "APPROVED"
},
"trigger\_operation\_id": "",
"status": "NEW",
"created\_at": 1549462299
}
* For a description of the webhook fields, see [Webhook - Identity Verification](identity-verification-webhook---sandbox-approved.html "Identity Verification Webhook - Sandbox Approved")
.
Your website shows the customer that his identity was successfully verified.
[##### Company Wallet - Verifying a Contact Identity](#idp246688_body)
A company wallet can include one or more personal contacts. To verify the identity of one of those contacts, you must include the ID of the contact in the request. See [Wallet Contact](wallet-contact-365061.html "Wallet Contact")
.
You have the option to verify the contact the within the company wallet. Use the 'Verify Identity' method, and add the `contact` field as demonstrated in this example:
###### Verify a Contact of a Company Wallet Request
* * Request
* // Request URL: POST https://sandboxapi.rapyd.net/v1/identities
// Message body:
{
"reference\_id": "121wpo234q12",
"ewallet": "ewallet\_aefe9c471842245e438b0902ed9f7fd1",
"contact": "cont\_241d6b40117716b525ec6dda72feee40",
"country": "US",
"document\_type": "PA",
"front\_side\_image": "/9j/4AAQSkZJRgABAQAAAQABAAD",
"front\_side\_image\_mime\_type": "image/jpeg",
"face\_image": "/9j/4AAQSkZJRgABAQAAAQABAAD/=",
"face\_image\_mime\_type": "image/jpeg"
}
* * JavaScript
* const makeRequest = require('/utilities').makeRequest;
async function main() {
try {
const body = {
reference\_id: '121wpo234q12',
ewallet: 'ewallet\_aefe9c471842245e438b0902ed9f7fd1',
contact\_id: 'cont\_241d6b40117716b525ec6dda72feee40',
country: 'US',
document\_type: 'PA',
front\_side\_image: '/9j/4AAQSkZJRgABAQAAAQABAAD',
front\_side\_image\_mime\_type: 'image/jpeg',
face\_image: '/9j/4AAQSkZJRgABAQAAAQABAAD/=',
face\_image\_mime\_type: 'image/jpeg'
};
const result = await makeRequest('POST', '/v1/identities', body);
console.log(result);
} catch (error) {
console.error('Error completing request', error);
}
}
* * PHP
* /utilities.php";
include($path);
$body = \[\
"reference\_id" => "121wpo234q12",\
"ewallet" => "ewallet\_aefe9c471842245e438b0902ed9f7fd1",\
"contact" => "cont\_241d6b40117716b525ec6dda72feee40",\
"country" => "US",\
"document\_type" => "PA",\
"front\_side\_image" => "/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAkGBxMk=",\
"front\_side\_image\_mime\_type" => "image/jpeg",\
"face\_image" => "/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAkGBxMSEhUSEhIVFhUXGBoVGRgk=",\
"face\_image\_mime\_type" => "image/jpeg"\
\];
try {
$object = make\_request('post', '/v1/identities', $body);
var\_dump($object);
} catch (Exception $e) {
echo "Error: $e";
}
?>
* * Python
* from pprint import pprint
from utilities import make\_request
wallet\_id = 'ewallet\_aefe9c471842245e438b0902ed9f7fd1'
contact\_id = 'cont\_241d6b40117716b525ec6dda72feee40'
idv\_details = {
"reference\_id": "121wpo234q12",
"ewallet": wallet\_id,
"contact": contact\_id,
"country": "US",
"document\_type": "PA",
"front\_side\_image": "/9j/4AAQSkZJRgABAQAAAQABAA==",
"front\_side\_image\_mime\_type": "image/jpeg",
"face\_image": "/9j/4AAQSkZJRgABAQAAAQABAAD/==",
"face\_image\_mime\_type": "image/jpeg"
}
results = make\_request(method='post', path=f'/v1/identities', body=idv\_details)
pprint(results)
###### Verify a Contact of a Wallet Response
* * Response
* {
"status": {
"error\_code": "",
"status": "SUCCESS",
"message": "",
"response\_code": "",
"operation\_id": "2ca8ee32-1c6e-4a9c-9ee5-8111117b6440"
},
"data": {
"id": "kycid\_c4a223f0f92e72d6a0006deafd182d30",
"reference\_id": "121wpo234q12"
}
}
### Looking for More In-Depth Technical Information?
Want to see the Rapyd API methods and objects that you'll use? Visit the [API Reference](api-reference.html "API Reference")
for more technical details.
In this section:
In Rapyd, the sandbox environment provides most of the functionality of the production environment, without using real money. Interested persons can use the sandbox to explore Rapyd's product offering or to test software integrations with Rapyd's API.
Search results
--------------
No results found
* [Prev](rapyd-verify-hosted-page.html#idp246382)
* [Next](identity-verification.html#idp246396)
---
# Account Verification
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [API Reference](api-reference.html)
* [Rapyd Verify](rapyd-verify-386565.html)
* Account Verification
* [Prev](rapyd-verify-386565.html)
* [Next](create-rapyd-verify-application.html)
#### Account Verification
Activate a production account for a merchant.
When a merchant sets up a Rapyd commercial account, they must provide background information, as required for the country and the business type. This information is collected securely through a hosted page. When the information is approved, Rapyd sends you a webhook with updated information.
This is a [Know-Your-Business (KYB)](glossary.html#UUID-945d98cf-adae-e1cf-2606-c7fae8b4a7e1_kyb "Know Your Business")
procedure for onboarding merchants who use Rapyd via a marketplace. Rapyd clients use the Client Portal.
Account Verification Methods
* [List Rapyd Verify Application Types](list-rapyd-verify-application-types.html "List Rapyd Verify Application Types")
- Retrieve a list of application types for a specified country.
* [Create Rapyd Verify Application](create-rapyd-verify-application.html "Create Rapyd Verify Application")
- Create an application for Rapyd Verify where the merchant provides information directly to Rapyd.
* [Retrieve Status of Rapyd Verify Application](retrieve-status-of-rapyd-verify-application.html "Retrieve Status of Rapyd Verify Application")
- Retrieve the status of an application.
Account Verification Webhooks
* [Application Status Change Webhook](application-status-change-webhook.html "Application Status Change Webhook")
In this section:
The process of verifying the identity of a business customer.
Search results
--------------
No results found
* [Prev](rapyd-verify-386565.html)
* [Next](create-rapyd-verify-application.html)
---
# Rotating Your API Keys
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Client Portal Guide](client-portal-guide.html)
* [Developers](developers.html)
* Rotating Your API Keys
* [Prev](defining-a-webhook-endpoint.html#idp252431)
* [Next](rotating-your-api-keys.html#idp252504)
#### Rotating Your API Keys
A guide to rotating your API Keys in Client Portal
You can rotate your API Keys in the Client Portal if your API keys in sandbox or production were compromised, or if you wished to rotate the API keys regularly. You must have Owner permissions.
For example, if you experienced a security breach where your API keys had been exposed to the public, you can rotate your API keys. This allows you to use new API keys.
1. Sign in as described in [Accessing the Client Portal](accessing-the-client-portal.html "Accessing the Client Portal")
and tap **Developer**.
The **Credentials Details** page appears.

2. Click the **Rotate API Keys** button.
[##### How to Rotate API Keys](#idp252504_body)
1. On the **Credentials Details** page within the **Developer** tab, select the **Rotate API Keys** button.
The **Choose when to revoke the existing key** dialogue box appears.

2. Select the time limit when you would like to rotate your API Keys in the **Within** field, ranging from **Now** to **Seven Days**.

3. Click **Next**.
4. The **Warning!** dialogue box appears.

### Updating API Keys
Make sure to update any script or program with the new API Keys, and accept Webhooks with either the new or previous API keys until the previous API keys are revoked. Not updating such scripts on time will prevent any payments that used the previous API keys.
5. Click the checkbox that says **I confirm rotating the API keys**.

6. Click **Next**.
The **Authenticator App** dialogue box appears.

7. Enter your OTP.
8. Click **Submit**.
The confirmation window appears.

9. An email notification will inform you the API keys have been rotated, and state when the previous API keys expire. The notification will be sent to users who have permission to view the API Keys.
[##### How to Rollback API Keys](#idp252562_body)
You can rollback your API Keys in production or sandbox in Client Portal. Performing a rollback of your API keys will delete the newly generated keys. This allows you to use your previous API keys instead.
You must have Owner permissions to perform this action. You can only rollback your API Keys after rotating the API Keys.
1. On the **Credential Details** page within the **Developer** tab, select the **Rollback API Keys** button.

2. The **Warning!** dialogue box appears.

### Rollback API Keys
This action will delete the new API keys and keep the previous API keys active. Make sure all scripts and programs use the active API keys to avoid payments failure.
3. Click the checkbox that says **I confirm rolling back the API keys immediately**.

4. Click **Next**.
5. The **Authenticator App** dialogue box appears.

6. Enter your OTP.
7. Click **Submit**.
The confirmation window appears.

8. An email notification will inform you the API keys have been rolled back. The notification will be sent to users who have permission to view the API Keys.
### Note
If you need more time to update your scripts with the new API keys prior to the previous API keys expiring, please contact support.
In this section:
Search results
--------------
No results found
* [Prev](defining-a-webhook-endpoint.html#idp252431)
* [Next](rotating-your-api-keys.html#idp252504)
---
# Reports Settings
[Skip to main content](#content-wrapper)
Documentation
=============
_print_
Toggle navigation
* [Documentation](index-en.html)
* [Client Portal Guide](client-portal-guide.html)
* [Reports](reports-367106.html)
* Reports Settings
* [Prev](setting-up-an-sftp-server.html#idp264569)
* [Next](reports-settings.html#idp264612)
#### Reports Settings
Manage the Reports settings in Client Portal.
[##### How to Manage Your Reports Settings](#idp264612_body)
1. Sign in as described in [Accessing the Client Portal](accessing-the-client-portal.html "Accessing the Client Portal")
and navigate to **Reports** > **Reports Settings**.
The **Reports Settings** page appears.

2. Choose one of the following under Select your reconciliation report type:
* **Daily** (Default): reports will show the transactions and settlement activity in a day.
* **By Settlement**: reports will show by the transaction type (will include only the transactions that are being settled).
3. Select one of the following under CSV file preferences:
* **Comma**: data will be separated by columns, which represent the comma.
* **Pipe**: data will be in one column, separated by a pipe. Example: One | Two | Three |
4. The Reports Settings will automatically save, and the next daily report will appear in your desired format.
In this section:
Search results
--------------
No results found
* [Prev](setting-up-an-sftp-server.html#idp264569)
* [Next](reports-settings.html#idp264612)
---