{"id":3468,"date":"2021-03-09T22:19:52","date_gmt":"2021-03-09T22:19:52","guid":{"rendered":"https:\/\/documents.openpay.mx\/?p=3468"},"modified":"2022-02-18T15:48:55","modified_gmt":"2022-02-18T15:48:55","slug":"partner","status":"publish","type":"post","link":"https:\/\/documents-mx-dev.opdevhm.com\/en\/docs\/partner.html","title":{"rendered":"Partners"},"content":{"rendered":"<div data-elementor-type=\"wp-post\" data-elementor-id=\"3468\" class=\"elementor elementor-3468\" data-elementor-post-type=\"post\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-4aacf8a elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"4aacf8a\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-e53f9a9\" data-id=\"e53f9a9\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-9a29d6a elementor-widget elementor-widget-text-editor\" data-id=\"9a29d6a\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<p>Openpay has a special model for commercial partners, which allows the partner to create transactions on behalf of a merchant, without having the merchant share their Openpay access keys. Under this model, the merchant can decide when to restrict or allow a commercial partner in Openpay.<\/p><p>In order for a commercial partner to integrate to the Openpay platform, it is essential to understand the following topics:<\/p><ol><li><a href=\"https:\/\/documents.openpay.mx\/docs\/card-charge.html\">Charging a card <img decoding=\"async\" src=\"https:\/\/documents.openpay.mx\/images\/external_arrow.png\" \/><\/a><\/li><li><a href=\"http:\/\/www.openpay.mx\/docs\/api\/\">Openpay API <img decoding=\"async\" src=\"https:\/\/documents.openpay.mx\/images\/external_arrow.png\" \/><\/a><\/li><li><a href=\"https:\/\/tools.ietf.org\/html\/rfc6749\">OAuth 2 Standard <img decoding=\"async\" src=\"https:\/\/documents.openpay.mx\/images\/external_arrow.png\" \/><\/a><\/li><li><a href=\"http:\/\/oauth.net\/2\/\">OAuth 2 Clients <img decoding=\"async\" src=\"https:\/\/documents.openpay.mx\/images\/external_arrow.png\" \/><\/a><\/li><li><a href=\"http:\/\/es.wikipedia.org\/wiki\/Representational_State_Transfer\">Rest\/HTTPS Services <img decoding=\"async\" src=\"https:\/\/documents.openpay.mx\/images\/external_arrow.png\" \/><\/a><\/li><\/ol><p><strong>To integrate a commercial parter into the platform, you need to go through the following steps<\/strong><\/p><ol><li>Registering the commercial partner.<\/li><li>Integrating the OAuth 2.0 protocol in the partner's application.<\/li><li>Consuming the Openpay API services using the partner's credentials.<\/li><\/ol><h2 id=\"tocAnchor-1-1-1\">1. Registering the commercial partner.<\/h2><p>As the first step, it is necessary to register the commercial partner in the Openpay platform. This process consists of submitting a registration form with information similar to the one required for the merchants. After filling and submitting this form, Openpay staff will validate the information, and if the information is correct a confirmation will be sent to your email, along with your partner identification codes.<\/p><p>To enter the registration form for testing <a href=\"https:\/\/sandbox-dashboard.openpay.mx\/partners\/register\">click here <img decoding=\"async\" src=\"https:\/\/documents.openpay.mx\/images\/external_arrow.png\" \/><\/a><\/p><p>Once the testing registration form is submitted, the partner account will be automatically activated and an email with the required information for OAuth 2.0 integration will be sent.<\/p><p>The email sent to the partner will contain \"client_id\" and \"client_secret\" codes, which will identify the partner in the Openpay platform.<\/p><p><span style=\"font-size: 10pt;\"><em><span style=\"color: #004481;\"><strong>Note:<\/strong><\/span> After you successfully test your integration with the testing environment, you can register in production by <a href=\"https:\/\/dashboard.openpay.mx\/partners\/register\">clicking here <img decoding=\"async\" src=\"https:\/\/documents.openpay.mx\/images\/external_arrow.png\" \/><\/a><\/em><\/span><\/p><h2 id=\"tocAnchor-1-1-2\">2. Integrating the OAuth 2.0 protocol in the partner's application.<\/h2><p>The OAuth flow used by Openpay for the Partner model allows a Merchant to authorize securely a commercial partner to create transactions in Openpay on their behalf, using the partner's own keys.<\/p><p>The partner must implement the OAuth 2.0 standard in their web application in order to integrate their web application with Openpay. The following diagrams shows the two flows allowed by the Openpay model:<\/p><p><strong>Flow 1<\/strong> : When the Merchant already has an Openpay account, the following interactions take place between the Merchant, the Partner, and Openpay.<\/p><p><img decoding=\"async\" src=\"https:\/\/documents.openpay.mx\/wp-content\/uploads\/2021\/03\/partner-existing-account.png\" alt=\"Ejemplo de flujo oauth 2 con cuenta existente\" width=\"700\" \/><\/p><p><strong>Flow 2<\/strong>: The following diagram shows the interaction between the Merchant, the Partner, and Openpay when the merchant sill hasn't registered in Openpay.<\/p><p><img decoding=\"async\" src=\"https:\/\/documents.openpay.mx\/wp-content\/uploads\/2021\/03\/partner-new-account.png\" alt=\"Ejemplo de flujo oauth 2 con cuenta nueva\" width=\"700\" \/><\/p><p>In both flows there are three different endpoints that should be consumed: One to request the Merchant's authorization, another to retrieve an access token, and a third one to retrieve the Merchant information.<\/p><p><strong>OAuth Endpoints<\/strong><\/p><ul><li><code>https:\/\/sandbox-dashboard.openpay.mx\/oauth\/authorize<\/code>: Allows the Merchant to grant permissions to the partner to create charges on behalf of the merchant.<\/li><li><code>https:\/\/sandbox-dashboard.openpay.mx\/oauth\/token<\/code>: Allows the Partner to obtain an access token.<\/li><li><code>https:\/\/sandbox-dashboard.openpay.mx\/oauth\/merchant<\/code>: Allows the Partner to retrieve the Merchant information in order to create transactions on their behalf.<\/li><\/ul><p><span style=\"font-size: 10pt;\"><em><span style=\"color: #004481;\"><strong>Note:<\/strong><\/span> In order to use the production environment endpoints, you need to replace \"sandbox-dashboard.openpay.mx\" with \"dashboard.openpay.mx\" in all paths.<\/em><\/span><\/p><p>The interactions between the three entities during the OAuth flow can be summarized in 5 steps as follows:<\/p><h3>1. Requesting access to the Merchant's account<\/h3><p>The \u201cClient\" (Partner) must send an HTTP request to the \u201cService provider\" (Openpay), requesting access to the Merchant's account. The service provider validates that the request is valid, and the \u201cUser\" (Merchant) is redirected to a page hosted by the service provider, in which the Merchant can grant the requested authorizations in order for the Partner to create transactions on his behalf.<\/p><p>The Partner must provide a button so the Merchant can activate the feature to allow the Partner to process payments with Openpay. This button should call the Authorization URI.<\/p><p><img decoding=\"async\" src=\"https:\/\/documents.openpay.mx\/wp-content\/uploads\/2021\/03\/partner-openpay-button.png\" alt=\"Ejemplo bot\u00f3n para recibir cargos mediante Openpay\" width=\"150\" \/><\/p><p>The URI to call is explained next.<\/p><p><strong>HTTP Request specification:<\/strong><\/p><ul><li>It must be a GET request to the authorization URI<\/li><li>The content type must be \u201ctext\/html\", \"application\/xhtml+xml\", or \"application\/xml\u201d<\/li><\/ul><p><strong>Syntax:<\/strong><\/p><figure class=\"highlight\"><pre><code class=\"language-bash\" data-lang=\"bash\">  https:\/\/\/oauth\/authorize?\n  <span class=\"nv\" style=\"color: #008080;\">client_id<\/span><span class=\"o\">=<\/span>\n  <span class=\"p\">&amp;<\/span><span class=\"nv\" style=\"color: #008080;\">redirect_uri<\/span><span class=\"o\">=<\/span>\n  <span class=\"p\">&amp;<\/span><span class=\"nv\" style=\"color: #008080;\">response_type<\/span><span class=\"o\">=<\/span>code\n  <span class=\"p\">&amp;<\/span><span class=\"nv\" style=\"color: #008080;\">scope<\/span><span class=\"o\">=<\/span><\/code><\/pre><\/figure><p><strong>Example:<\/strong><\/p><figure class=\"highlight\"><pre><code class=\"language-bash\" data-lang=\"bash\">  https:\/\/sandbox-dashboard.openpay.mx\/oauth\/authorize?\n  <span class=\"nv\" style=\"color: #008080;\">client_id<\/span><span class=\"o\">=<\/span>ppk_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n  <span class=\"p\">&amp;<\/span><span class=\"nv\" style=\"color: #008080;\">redirect_uri<\/span><span class=\"o\">=<\/span>https%3a%2f%2flocalhost%3a8443%2fsitepartner%2fregisterok\n  <span class=\"p\">&amp;<\/span><span class=\"nv\" style=\"color: #008080;\">response_type<\/span><span class=\"o\">=<\/span>code\n  <span class=\"p\">&amp;<\/span><span class=\"nv\" style=\"color: #008080;\">scope<\/span><span class=\"o\">=<\/span>read+write<\/code><\/pre><\/figure><p><strong>Where:<\/strong><\/p><ul><li><strong>client_id:<\/strong> Unique Partner identifier, sent by email to the Partner after completing their registration and being verified by Openpay staff.<\/li><li><strong>redirect_uri:<\/strong> URI to which the merchant will be redirected after they approve the Partner. This URL must match the URI given in the registration form, otherwise the approval will fail. Don't forget to URL encode this parameter in your request.<\/li><li><strong>response_type:<\/strong> Fixed value \u201ccode\u201d. This indicates that an authorization code is expected to be returned after the merchant authorizes the Partner.<\/li><li><strong>scope:<\/strong> Fixed value \u201cread+write\u201d. Indicates the permissions that the Partner will have once they have access to the Merchant's information to create charges.<\/li><\/ul><p><em><span style=\"font-size: 10pt; color: #004481;\"><strong>Note:<\/strong><\/span><\/em><\/p><ul><li><em><span style=\"font-size: 10pt;\">The possible OAUth errors are described in the section <a href=\"https:\/\/documents.openpay.mx\/docs\/partner.html#tocAnchor-1-1-4\">\u201cerrores OAuth\u201d<\/a><\/span><\/em><\/li><\/ul><ul><li><em><span style=\"font-size: 10pt;\">In order to call the production environment URI, you need to replace \"sandbox-dashboard.openpay.mx\" with \"dashboard.openpay.mx\"<\/span><\/em><\/li><\/ul><h3>2. Authenticating the Merchant on the Openpay platform<\/h3><p>The Merchant will have the possibility of creating a new account or using an existing one in Openpay. Either an explicit or implict authorization is required from the Merchant, for the Partner to be able to create charges on their behalf. Both cases are described next.<\/p><ol type=\"a\"><li><strong>The merchant creates a new account in Openpay<\/strong>El comercio al dar clic en el bot\u00f3n que provee el integrador desde su aplicativo, ser\u00e1 enviado a una p\u00e1gina dentro de la plataforma Openpay. El comercio selecciona &#8220;Nueva cuenta&#8221;, completa el formulario de registro y lo env\u00eda a Openpay.Openpay validar\u00e1 la informaci\u00f3n solicitada en el formulario, en caso de ser correctos estos datos personal de Openpay enviar\u00e1 un correo electr\u00f3nico de confirmaci\u00f3n. El correo recibido tendr\u00e1 un bot\u00f3n para definir una contrase\u00f1a y poder ingresar al portal WEB que provee Openpay para cualquier comercio.<\/li><\/ol><p><span style=\"font-size: 10pt; color: #004481;\"><em><strong>Note:<\/strong><\/em><\/span><\/p><ul><li><span style=\"font-size: 10pt;\"><em>When a new Merchant account is created this way, the Partner will have an implicit authorization to charge on behalf of the Merchant.<\/em><\/span><\/li><\/ul><ol type=\"a\"><li><strong>The Merchant uses an existing account in Openpay<\/strong>El comercio al dar clic en el bot\u00f3n que provee el integrador desde su aplicativo, ser\u00e1 enviado a una p\u00e1gina dentro de la plataforma Openpay. El comercio selecciona &#8220;Usar cuenta&#8221; e inicia sesi\u00f3n en Openpay.Como parte de la seguridad que provee este esquema de integraci\u00f3n, al comercio se le mostrar\u00e1 una p\u00e1gina de autorizaci\u00f3n para que expl\u00edcitamente conceda al Integrador los permisos necesarios para que pueda realizar operaciones en su nombre.En caso de que el comercio no permita el acceso a su cuenta, el proveedor de servicios har\u00e1 un redirect a la URI del Integrador, enviando como par\u00e1metros de respuesta en la URI:<ul><li><strong>error:<\/strong> access_denied<\/li><li><strong>error_description:<\/strong> User+denied+access<\/li><\/ul><\/li><\/ol><p><span style=\"font-size: 10pt; color: #004481;\"><em><strong>Note:<\/strong><\/em><\/span><\/p><ul><li><span style=\"font-size: 10pt;\"><em>In the sandbox environment new merchants are automatically validated and receive a confirmation email immediately.<\/em><\/span><\/li><\/ul><ul><li><span style=\"font-size: 10pt;\"><em>When an existing account is used, the Partner must be granted authorization explicitly.<\/em><\/span><\/li><\/ul><h3>3. Receiving the authorization code<\/h3><p>Once the service provider (Openpay) receives the request to grant authorization to the Partner, an authorization code will be generated, which will be sent to the Partner as a parameter in the redirect URI they provided.<\/p><p><strong>The URI to which the Merchant is redirected is formed as follows:<\/strong><\/p><p><strong>Syntax:<\/strong><\/p><figure class=\"highlight\"><pre><code class=\"language-bash\" data-lang=\"bash\">  https:\/\/?code=<code><code><\/code><\/code><\/code><\/pre><\/figure><p><strong>Example:<\/strong><\/p><figure class=\"highlight\"><pre><code class=\"language-bash\" data-lang=\"bash\">  https:\/\/www.sitepartner.mx\/PartnerTest\/home?\n  <span class=\"nv\" style=\"color: #008080;\">code<\/span><span class=\"o\">=<\/span>769FkXdN7rAicf1l2dLUEeBLs53pgM<\/code><\/pre><\/figure><p><strong>Where:<\/strong><\/p><ul><li><strong>redirect_uri:<\/strong> URI to which the merchant will be redirected to once he approves the Partner.<\/li><li><strong>code:<\/strong> Authorization code used by the Partner to obtain the access tokens.<\/li><\/ul><p><span style=\"font-size: 10pt;\"><em><span style=\"color: #004481;\"><strong>Note:<\/strong><\/span> The authorization code returned to the Partner by Openpay must be stored, since this will be used to request future access tokens.<\/em><\/span><\/p><h3>4. Requesting access tokens<\/h3><p>Once the Partner has an authorization code, they must use it in a HTTP request in order to retrieve an access token from the service provider.<\/p><p>The URI used to retrieve the access token is explained next.<\/p><p><strong>HTTP Request specification:<\/strong><\/p><ul><li>It must be a GET request to the token URI<\/li><\/ul><p><strong>Syntax:<\/strong><\/p><figure class=\"highlight\"><pre><code class=\"language-bash\" data-lang=\"bash\">https:\/\/\/oauth\/token\n  ?code<span class=\"o\">=<\/span><code>\n  <span class=\"p\">&amp;<\/span><span class=\"nv\" style=\"color: #008080;\">client_id<\/span><span class=\"o\">=<\/span>\n  <span class=\"p\">&amp;<\/span><span class=\"nv\" style=\"color: #008080;\">client_secret<\/span><span class=\"o\">=<\/span>\n  <span class=\"p\">&amp;<\/span><span class=\"nv\" style=\"color: #008080;\">grant_type<\/span><span class=\"o\">=<\/span>authorization_code\n  <span class=\"p\">&amp;<\/span><span class=\"nv\" style=\"color: #008080;\">redirect_uri<\/span><span class=\"o\">=<\/span><\/code><\/code><\/pre><pre><code class=\"language-bash\" data-lang=\"bash\"><code><\/code><\/code><\/pre><\/figure><p><strong>Example:<\/strong><\/p><figure class=\"highlight\"><pre><code class=\"language-bash\" data-lang=\"bash\">  https:\/\/sandbox-dashboard.openpay.mx\/oauth\/token?\n  <span class=\"nv\" style=\"color: #008080;\">code<\/span><span class=\"o\">=<\/span>769FkXdN7rAicf1l2dLUEeBLs53pgM\n  <span class=\"p\">&amp;<\/span><span class=\"nv\" style=\"color: #008080;\">client_id<\/span><span class=\"o\">=<\/span>ppk_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n  <span class=\"p\">&amp;<\/span><span class=\"nv\" style=\"color: #008080;\">client_secret<\/span><span class=\"o\">=<\/span>psk_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n  <span class=\"p\">&amp;<\/span><span class=\"nv\" style=\"color: #008080;\">grant_type<\/span><span class=\"o\">=<\/span>authorization_code\n  <span class=\"p\">&amp;<\/span><span class=\"nv\" style=\"color: #008080;\">redirect_uri<\/span><span class=\"o\">=<\/span>http%3A%2F%2Fwww.sitepartner.mx%2FPartnerTest%2Fhome<\/code><\/pre><\/figure><p><strong>Where:<\/strong><\/p><ul><li><strong>code:<\/strong> Authorization code used by the Partner to obtain the access tokens.<\/li><li><strong>client_id:<\/strong> Unique identifier for the Partner, which was sent to their email after their registration and validation.<\/li><li><strong>client_secret:<\/strong> Secret key of the Partner, which was sent to their email after their registration and validation.<\/li><li><strong>grant_type:<\/strong> Fixed value \u201cauthorization_code\u201d. Indicates the kind of request being made.<\/li><li><strong>redirect_uri:<\/strong> URI to which the merchant will be redirected after they approve the Partner. This URL must match the URI given in the registration form, otherwise the approval will fail. Don't forget to URL encode this parameter in your request.<\/li><\/ul><p><br>The following is the response that the service provider will return to the Partner:<\/p><p><strong>HTTP Response specification:<\/strong><\/p><ul><li><strong>Returned Content Type:<\/strong> \u201capplication\/json\u201d<\/li><li><strong>Response code:<\/strong> 200.<\/li><\/ul><p><strong>Syntax:<\/strong><\/p><figure class=\"highlight\"><pre><code class=\"language-html\" data-lang=\"html\">{\n   \"access_token\":\"<span class=\"p\">&lt;<\/span><span class=\"nt\" style=\"color: #000080;\">access_token<\/span><span class=\"p\">&gt;<\/span>\",\n   \"token_type\":\"<span class=\"p\">&lt;<\/span><span class=\"nt\" style=\"color: #000080;\">token_type<\/span><span class=\"p\">&gt;<\/span>\",\n   \"refresh_token\":\"<span class=\"p\">&lt;<\/span><span class=\"nt\" style=\"color: #000080;\">refresh_token<\/span><span class=\"p\">&gt;<\/span>\",\n   \"expires_in\":<span class=\"p\">&lt;<\/span><span class=\"nt\" style=\"color: #000080;\">expires_in<\/span><span class=\"p\">&gt;<\/span>,\n   \"scope\":\"<span class=\"p\">&lt;<\/span><span class=\"nt\" style=\"color: #000080;\">scope<\/span><span class=\"p\">&gt;<\/span>\"\n}<\/code><\/pre><\/figure><p><strong>Example:<\/strong><\/p><figure class=\"highlight\"><pre><code class=\"language-html\" data-lang=\"html\">{\n   \"access_token\":\"5abd52c7-c320-46ae-832b-d3a0108f3242\",\n   \"token_type\":\"bearer\",\n   \"refresh_token\":\"29439t39-51f1a-4f3a-9479-e58a873b4ad0\",\n   \"expires_in\":297,\n   \"scope\":\"read write\"\n}<\/code><\/pre><\/figure><p><strong>Where:<\/strong><\/p><ul><li><strong>access_token:<\/strong> Access token used to consume the OAuth 2 services.<\/li><li><strong>token_type:<\/strong> Fixed value \u201cbearer\u201d. Token type.<\/li><li><strong>refresh_token:<\/strong> Token that can be used later to retrieve new access tokens. It must be stored securely, as if it were an user password.<\/li><li><strong>expires_in:<\/strong> Time to live of the access token, in seconds.<\/li><li><strong>scope:<\/strong> Indicates the permissions that were granted to the Partner to interact with Openpay.<\/li><\/ul><p><span style=\"color: #004481;\"><em><strong>Note:<\/strong><\/em><\/span><\/p><ul><li><em>The possible OAUth errors are described in the section <a href=\"https:\/\/documents.openpay.mx\/docs\/partner.html#tocAnchor-1-1-4\">\u201cerrores OAuth\u201d<\/a><\/em><\/li><\/ul><h3>5. Retrieving merchant information to connect to their account<\/h3><p>As a last step, the partner must consume the Openpay service with OAuth 2 security that allows them to retrieve the merchant information. With this information the partner will be able to use the Openpay API, with the consideration that all operations will be name on behalf of the merchant.<\/p><p>The URI used to retrieve the access token is explained next.<\/p><p><strong>HTTP Request specification:<\/strong><\/p><ul><li>A GET request must be made to retrieve the merchant information<\/li><\/ul><p><strong>Syntax:<\/strong><\/p><figure class=\"highlight\"><pre><code class=\"language-bash\" data-lang=\"bash\">  https:\/\/\/oauth\/merchant?access_token<span class=\"o\">=<\/span><\/code><\/pre><\/figure><p><strong>Example:<\/strong><\/p><figure class=\"highlight\"><pre><code class=\"language-bash\" data-lang=\"bash\">  https:\/\/sandbox-dashboard.openpay.mx\/oauth\/merchant?\n  <span class=\"nv\" style=\"color: #008080;\">access_token<\/span><span class=\"o\">=<\/span>e05fe2e3-6437-42e3-a82c-8c8131811b51<\/code><\/pre><\/figure><p><strong>Where:<\/strong><\/p><ul><li><strong>access_token:<\/strong> Access token used to consume the OAuth 2 services.<\/li><\/ul><p><br> Following is the HTTP response by the service provider to the Partner's request:<\/p><p><strong>HTTP Response specification:<\/strong><\/p><ul><li><strong>Returned Content Type:<\/strong> \u201capplication\/json\u201d<\/li><li><strong>Response code:<\/strong> 200.<\/li><\/ul><p><strong>Syntax:<\/strong><\/p><figure class=\"highlight\"><pre><code class=\"language-html\" data-lang=\"html\">{\n   \"merchant_id\":\"<span class=\"p\">&lt;<\/span><span class=\"nt\" style=\"color: #000080;\">merchant_id<\/span><span class=\"p\">&gt;<\/span>\",\n   \"secret_key\":\"<span class=\"p\">&lt;<\/span><span class=\"nt\" style=\"color: #000080;\">secret_key<\/span><span class=\"p\">&gt;<\/span>\",\n   \"public_key\":\"<span class=\"p\">&lt;<\/span><span class=\"nt\" style=\"color: #000080;\">public_key<\/span><span class=\"p\">&gt;<\/span>\",\n   \"merchant_partner_status\":\"<span class=\"p\">&lt;<\/span><span class=\"nt\" style=\"color: #000080;\">merchant_partner_status<\/span><span class=\"p\">&gt;<\/span>\",\n   \"merchant_status\":\"<span class=\"p\">&lt;<\/span><span class=\"nt\" style=\"color: #000080;\">merchant_status<\/span><span class=\"p\">&gt;<\/span>\"\n}<\/code><\/pre><\/figure><p><strong>Example:<\/strong><\/p><figure class=\"highlight\"><pre><code class=\"language-html\" data-lang=\"html\">{\n   \"merchant_id\":\"xxxxxxxxxxxxxxxxxxxx\",\n   \"secret_key\":\"sk_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n   \"public_key\":\"pk_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n   \"merchant_partner_status\":\"active\",\n   \"merchant_status\":\"active\"\n}<\/code><\/pre><\/figure><p><strong>Where:<\/strong><\/p><ul><li><strong>merchant_id:<\/strong> Openpay identifier for the merchant<\/li><li><strong>secret_key:<\/strong> Secret key used to call most of the Openpay API on behalf of the merchant.<\/li><li><strong>public_key:<\/strong> Public key used to create card tokens using the Openpay javascript library.<\/li><li><strong>merchant_partner_status:<\/strong> Current status of the Partner\/Merchant relation.<\/li><li><strong>merchant_status:<\/strong> Current status of the merchant.<\/li><\/ul><p><span style=\"font-size: 10pt; color: #004481;\"><em><strong>Note:<\/strong><\/em><\/span><\/p><ul><li><span style=\"font-size: 10pt;\"><em>To see a list of the possible OAuth errors <a href=\"https:\/\/documents.openpay.mx\/docs\/partner.html#tocAnchor-1-1-4\">see \"OAuth errors\u201d<\/a><\/em><\/span><\/li><li><span style=\"font-size: 10pt;\"><em>The access token used to retrieve the merchant information is valid only for five minutes.<\/em><\/span><\/li><\/ul><ul><li><span style=\"font-size: 10pt;\"><em>For information on how to use the Openpay API, refer to the guide <a href=\"https:\/\/documents.openpay.mx\/docs\/card-charge.html\">\"Card charges\" <img decoding=\"async\" src=\"https:\/\/documents.openpay.mx\/images\/external_arrow.png\" \/><\/a> or to the <a href=\"http:\/\/www.openpay.mx\/docs\/api\/\">API documentation <img decoding=\"async\" src=\"https:\/\/documents.openpay.mx\/images\/external_arrow.png\" \/><\/a><\/em><\/span><\/li><\/ul><h2 id=\"tocAnchor-1-1-3\">3. Consume the Openpay API as a partner<\/h2><p>From this point on the Partner will be able to use the Openpay services as specified in the <a href=\"http:\/\/www.openpay.mx\/docs\/api\/\">\"documentation\"<\/a>, by using the keys retrieved in the previous step.<\/p><p>Any pair of keys provided to the Partner in the previous step will be able to do the following operations:<\/p><ul><li><a href=\"http:\/\/www.openpay.mx\/docs\/api\/#cargos\">Charges <img decoding=\"async\" src=\"https:\/\/documents.openpay.mx\/images\/external_arrow.png\" \/><\/a><ul><li><a href=\"http:\/\/www.openpay.mx\/docs\/api\/#cargo-a-nueva-tarjeta\">To cards <img decoding=\"async\" src=\"https:\/\/documents.openpay.mx\/images\/external_arrow.png\" \/><\/a><\/li><li><a href=\"http:\/\/www.openpay.mx\/docs\/api\/#cargo-en-tienda\">On stores <img decoding=\"async\" src=\"https:\/\/documents.openpay.mx\/images\/external_arrow.png\" \/><\/a><\/li><li><a href=\"http:\/\/www.openpay.mx\/docs\/api\/#cargo-en-banco\">Through bank accounts <img decoding=\"async\" src=\"https:\/\/documents.openpay.mx\/images\/external_arrow.png\" \/><\/a><\/li><\/ul><\/li><li><a href=\"http:\/\/www.openpay.mx\/docs\/api\/#transferencias\">Wire transfers <img decoding=\"async\" src=\"https:\/\/documents.openpay.mx\/images\/external_arrow.png\" \/><\/a><\/li><li><a href=\"http:\/\/www.openpay.mx\/docs\/api\/#comisiones\">Fees <img decoding=\"async\" src=\"https:\/\/documents.openpay.mx\/images\/external_arrow.png\" \/><\/a><\/li><\/ul><p><strong>Ready!!<\/strong> Now you can start to integrate merchants into your platform and process charges through Openpay.<\/p><h2 id=\"tocAnchor-1-1-4\">Errors in the authorization process<\/h2><p>During the authentication process, if the URI is not formed correctly to request the merchant authorization to the service provider, an error page will be shown:<\/p>\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-ca682e8 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"ca682e8\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-3caa9a3\" data-id=\"3caa9a3\" data-element_type=\"column\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-f882e5d elementor-widget elementor-widget-heading\" data-id=\"f882e5d\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Message<\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-4efc799\" data-id=\"4efc799\" data-element_type=\"column\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-d906381 elementor-widget elementor-widget-heading\" data-id=\"d906381\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Cause<\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-cbec421 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"cbec421\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-1124a20\" data-id=\"1124a20\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-43343ee elementor-widget elementor-widget-heading\" data-id=\"43343ee\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">OAuth protocol error <\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-3360bb6\" data-id=\"3360bb6\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-5de70db elementor-widget elementor-widget-heading\" data-id=\"5de70db\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">A parameter may be missing or there was an intenal error in the OAUth protocol.<\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-dfc6717 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"dfc6717\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-c60ba87\" data-id=\"c60ba87\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-a41c506 elementor-widget elementor-widget-heading\" data-id=\"a41c506\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">URI used for the redirect is invalid <\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-9e934b7\" data-id=\"9e934b7\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-c4f1d95 elementor-widget elementor-widget-heading\" data-id=\"c4f1d95\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">The parameter \u201credirect_uri\u201d is malformed or was not provided.<\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-b9a996a elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"b9a996a\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-0c8328b\" data-id=\"0c8328b\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-e1981a9 elementor-widget elementor-widget-heading\" data-id=\"e1981a9\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Invalid authorization service request. <\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-b24571c\" data-id=\"b24571c\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-1fa0a2f elementor-widget elementor-widget-heading\" data-id=\"1fa0a2f\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">The request is malformed or a parameter is missing.<\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-98fad01 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"98fad01\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-66f270c\" data-id=\"66f270c\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-7ca84b3 elementor-widget elementor-widget-heading\" data-id=\"7ca84b3\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">The Partner client_id is invalid. <\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-7482bf7\" data-id=\"7482bf7\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-25c4902 elementor-widget elementor-widget-heading\" data-id=\"25c4902\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">The parameter \u201cclient_id\u201d was not provided.<\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-61cdd50 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"61cdd50\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-8f7a8d3\" data-id=\"8f7a8d3\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-ace868c elementor-widget elementor-widget-heading\" data-id=\"ace868c\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">The Partner has not been authorized. <\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-bbade58\" data-id=\"bbade58\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-31eeccc elementor-widget elementor-widget-heading\" data-id=\"31eeccc\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">The \u201cid_client\u201d does not exist or the partner has not been authorized yet.<\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-71905dc elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"71905dc\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-0b46aa3\" data-id=\"0b46aa3\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-7e11121 elementor-widget elementor-widget-heading\" data-id=\"7e11121\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Grant type is not supported. <\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-5559d3a\" data-id=\"5559d3a\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-dbe51ca elementor-widget elementor-widget-heading\" data-id=\"dbe51ca\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\"> \tThe parameter \u201cgrant_type\u201d was not provided or the value is invalid.<\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-eaae000 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"eaae000\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-d331403\" data-id=\"d331403\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-e961a33 elementor-widget elementor-widget-heading\" data-id=\"e961a33\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Permissions are not supported. <\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-f9ca14d\" data-id=\"f9ca14d\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-6c7c786 elementor-widget elementor-widget-heading\" data-id=\"6c7c786\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">The parameter \u201cscope\u201d contains invalid permissions.<\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-cf89c25 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"cf89c25\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-f36d288\" data-id=\"f36d288\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-50eb1ad elementor-widget elementor-widget-heading\" data-id=\"50eb1ad\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">URI used for redirect is invalid. <\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-b3fc228\" data-id=\"b3fc228\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-c91fb21 elementor-widget elementor-widget-heading\" data-id=\"c91fb21\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">The uri provided is not well formed.<\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-ac9c779 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"ac9c779\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-bac3671\" data-id=\"bac3671\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-d60f57b elementor-widget elementor-widget-heading\" data-id=\"d60f57b\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Response type not supported. <\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-aeb0302\" data-id=\"aeb0302\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-b86eb03 elementor-widget elementor-widget-heading\" data-id=\"b86eb03\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">The value of the parameter \u201cresponse_type\u201d is invalid.<\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-8f48937 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"8f48937\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-aee470a\" data-id=\"aee470a\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-e71b707 elementor-widget elementor-widget-heading\" data-id=\"e71b707\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Access denied. <\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-61b4a53\" data-id=\"61b4a53\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-bc179fc elementor-widget elementor-widget-heading\" data-id=\"bc179fc\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">You don't have permissions to the requested resource.<\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-a3e6959 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"a3e6959\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-5325517\" data-id=\"5325517\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-6539742 elementor-widget elementor-widget-heading\" data-id=\"6539742\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">The merchant does not exist anymore. <\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-cb732aa\" data-id=\"cb732aa\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-77d0988 elementor-widget elementor-widget-heading\" data-id=\"77d0988\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">The merchant no longer has an active account in Openpay.<\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-ba67846 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"ba67846\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-8fc100e\" data-id=\"8fc100e\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-1a5a8cd elementor-widget elementor-widget-heading\" data-id=\"1a5a8cd\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Error during the registration process. Invalid data, verify your information. <\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-0442bd5\" data-id=\"0442bd5\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-7a6ce3c elementor-widget elementor-widget-heading\" data-id=\"7a6ce3c\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Some fields are missing in the form.<\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-2dc8de0 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"2dc8de0\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-a741674\" data-id=\"a741674\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-18be6e9 elementor-widget elementor-widget-text-editor\" data-id=\"18be6e9\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<h2 id=\"tocAnchor-1-1-5\">Errors while obtaining the access token or the merchant information<\/h2><p>During the process to retrive the access token or the merchant information, it is possible that the OAuth protocol returns one of the following errors:<\/p><p><strong>As part of the error response, two parameters will be returned:<\/strong><\/p><ul><li><strong>error:<\/strong> Error code.<\/li><li><strong>errorrror_description:<\/strong> Error description with aditional information.<\/li><\/ul><p><strong> Error codes:<\/strong><\/p>\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-4c5c695 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"4c5c695\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-573fd7e\" data-id=\"573fd7e\" data-element_type=\"column\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-d43faa5 elementor-widget elementor-widget-heading\" data-id=\"d43faa5\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Message<\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-712791f\" data-id=\"712791f\" data-element_type=\"column\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-67014ff elementor-widget elementor-widget-heading\" data-id=\"67014ff\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Cause<\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-0d48d5c elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"0d48d5c\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-60b8840\" data-id=\"60b8840\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-b77f63d elementor-widget elementor-widget-heading\" data-id=\"b77f63d\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">unsupported_response_type <\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-5be66d3\" data-id=\"5be66d3\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-8e378f7 elementor-widget elementor-widget-heading\" data-id=\"8e378f7\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Response type not supported.<\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-a05cf15 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"a05cf15\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-6d3edff\" data-id=\"6d3edff\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-39eddb0 elementor-widget elementor-widget-heading\" data-id=\"39eddb0\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">invalid_client_id <\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-d576af5\" data-id=\"d576af5\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-161a606 elementor-widget elementor-widget-heading\" data-id=\"161a606\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">The client identifier is invalid<\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-e936988 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"e936988\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-8e15148\" data-id=\"8e15148\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-3f614ee elementor-widget elementor-widget-heading\" data-id=\"3f614ee\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">invalid_request <\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-ea75221\" data-id=\"ea75221\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-398636c elementor-widget elementor-widget-heading\" data-id=\"398636c\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">HTTPS is required, or expected a POST request.<\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-441ed71 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"441ed71\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-758c00d\" data-id=\"758c00d\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-cbff3c8 elementor-widget elementor-widget-heading\" data-id=\"cbff3c8\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">invalid_client_credentialst <\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-63d3e2e\" data-id=\"63d3e2e\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-5c3a407 elementor-widget elementor-widget-heading\" data-id=\"5c3a407\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Invalid client secret.<\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-f24901c elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"f24901c\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-c9d2696\" data-id=\"c9d2696\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-f07ecbe elementor-widget elementor-widget-heading\" data-id=\"f07ecbe\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">invalid_grant <\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-9481859\" data-id=\"9481859\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-754d149 elementor-widget elementor-widget-heading\" data-id=\"754d149\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Invalid authorization code.<\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-e30d7be elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"e30d7be\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-367a17b\" data-id=\"367a17b\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-437e539 elementor-widget elementor-widget-heading\" data-id=\"437e539\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">redirect_uri_mismatcht <\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-b547108\" data-id=\"b547108\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-4f6eb8e elementor-widget elementor-widget-heading\" data-id=\"4f6eb8e\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Redirect URL has not been provided or does not match the URL defined initially by the Partner.<\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-0968811 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"0968811\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-9b989b0\" data-id=\"9b989b0\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-1f26db9 elementor-widget elementor-widget-heading\" data-id=\"1f26db9\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">inactive_user <\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-01717a6\" data-id=\"01717a6\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-1548fa9 elementor-widget elementor-widget-heading\" data-id=\"1548fa9\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">The administrator has inactivated the user<\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-73f3fe6 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"73f3fe6\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-1ed1a42\" data-id=\"1ed1a42\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-7a1d7ff elementor-widget elementor-widget-heading\" data-id=\"7a1d7ff\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">rate_limit_exceeded <\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-420082c\" data-id=\"420082c\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-c2c8ead elementor-widget elementor-widget-heading\" data-id=\"c2c8ead\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Maximum number of login attempts exceeded.<\/h2>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>","protected":false},"excerpt":{"rendered":"<p>Openpay provee un esquema de integraci\u00f3n para los partners, este esquema permite realizar operaciones a nombre de un comercio, sin que este tenga que compartir sus credenciales de acceso a Openpay. Bajo este esquema, el comercio determina cuando restringe o permite a un partner realizar acciones a nombre del comercio dentro de Openpay. Para que&hellip;&nbsp;<a href=\"https:\/\/documents-mx-dev.opdevhm.com\/en\/docs\/partner.html\" rel=\"bookmark\">Read More &raquo;<span class=\"screen-reader-text\">Partners<\/span><\/a><\/p>","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"neve_meta_sidebar":"","neve_meta_container":"","neve_meta_enable_content_width":"","neve_meta_content_width":0,"neve_meta_title_alignment":"","neve_meta_author_avatar":"","neve_post_elements_order":"","neve_meta_disable_header":"","neve_meta_disable_footer":"","neve_meta_disable_title":"","footnotes":""},"categories":[133],"tags":[],"class_list":["post-3468","post","type-post","status-publish","format-standard","hentry","category-docs"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v23.8 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Partners | Openpay<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/documents-mx-dev.opdevhm.com\/en\/docs\/partner.html\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Partners | Openpay\" \/>\n<meta property=\"og:description\" content=\"Openpay provee un esquema de integraci\u00f3n para los partners, este esquema permite realizar operaciones a nombre de un comercio, sin que este tenga que compartir sus credenciales de acceso a Openpay. Bajo este esquema, el comercio determina cuando restringe o permite a un partner realizar acciones a nombre del comercio dentro de Openpay. Para que&hellip;&nbsp;Read More &raquo;Partners\" \/>\n<meta property=\"og:url\" content=\"https:\/\/documents-mx-dev.opdevhm.com\/en\/docs\/partner.html\/\" \/>\n<meta property=\"og:site_name\" content=\"Openpay\" \/>\n<meta property=\"article:published_time\" content=\"2021-03-09T22:19:52+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-02-18T15:48:55+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/documents.openpay.mx\/images\/external_arrow.png\" \/>\n<meta name=\"author\" content=\"user\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"user\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"15 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/documents-mx-dev.opdevhm.com\/docs\/partner.html#article\",\"isPartOf\":{\"@id\":\"https:\/\/documents-mx-dev.opdevhm.com\/docs\/partner.html\"},\"author\":{\"name\":\"user\",\"@id\":\"https:\/\/documents-mx-dev.opdevhm.com\/#\/schema\/person\/4c704d548de0c4eed7ac90530bf655a7\"},\"headline\":\"Partners\",\"datePublished\":\"2021-03-09T22:19:52+00:00\",\"dateModified\":\"2022-02-18T15:48:55+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/documents-mx-dev.opdevhm.com\/docs\/partner.html\"},\"wordCount\":2624,\"publisher\":{\"@id\":\"https:\/\/documents-mx-dev.opdevhm.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/documents-mx-dev.opdevhm.com\/docs\/partner.html#primaryimage\"},\"thumbnailUrl\":\"https:\/\/documents.openpay.mx\/images\/external_arrow.png\",\"articleSection\":[\"Documentaci\u00f3n\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/documents-mx-dev.opdevhm.com\/docs\/partner.html\",\"url\":\"https:\/\/documents-mx-dev.opdevhm.com\/docs\/partner.html\",\"name\":\"Partners | Openpay\",\"isPartOf\":{\"@id\":\"https:\/\/documents-mx-dev.opdevhm.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/documents-mx-dev.opdevhm.com\/docs\/partner.html#primaryimage\"},\"image\":{\"@id\":\"https:\/\/documents-mx-dev.opdevhm.com\/docs\/partner.html#primaryimage\"},\"thumbnailUrl\":\"https:\/\/documents.openpay.mx\/images\/external_arrow.png\",\"datePublished\":\"2021-03-09T22:19:52+00:00\",\"dateModified\":\"2022-02-18T15:48:55+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/documents-mx-dev.opdevhm.com\/docs\/partner.html#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/documents-mx-dev.opdevhm.com\/docs\/partner.html\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/documents-mx-dev.opdevhm.com\/docs\/partner.html#primaryimage\",\"url\":\"https:\/\/documents.openpay.mx\/images\/external_arrow.png\",\"contentUrl\":\"https:\/\/documents.openpay.mx\/images\/external_arrow.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/documents-mx-dev.opdevhm.com\/docs\/partner.html#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Inicio\",\"item\":\"https:\/\/documents-mx-dev.opdevhm.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Partners\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/documents-mx-dev.opdevhm.com\/#website\",\"url\":\"https:\/\/documents-mx-dev.opdevhm.com\/\",\"name\":\"Openpay\",\"description\":\"Openpay a BBVA Company\",\"publisher\":{\"@id\":\"https:\/\/documents-mx-dev.opdevhm.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/documents-mx-dev.opdevhm.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/documents-mx-dev.opdevhm.com\/#organization\",\"name\":\"Openpay Soporte\",\"url\":\"https:\/\/documents-mx-dev.opdevhm.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/documents-mx-dev.opdevhm.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/documents-mx-dev.opdevhm.com\/wp-content\/uploads\/2020\/05\/logo.png\",\"contentUrl\":\"https:\/\/documents-mx-dev.opdevhm.com\/wp-content\/uploads\/2020\/05\/logo.png\",\"width\":290,\"height\":90,\"caption\":\"Openpay Soporte\"},\"image\":{\"@id\":\"https:\/\/documents-mx-dev.opdevhm.com\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/documents-mx-dev.opdevhm.com\/#\/schema\/person\/4c704d548de0c4eed7ac90530bf655a7\",\"name\":\"user\",\"url\":\"https:\/\/documents-mx-dev.opdevhm.com\/en\/docs\/author\/berni\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Partners | Openpay","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/documents-mx-dev.opdevhm.com\/en\/docs\/partner.html\/","og_locale":"en_US","og_type":"article","og_title":"Partners | Openpay","og_description":"Openpay provee un esquema de integraci\u00f3n para los partners, este esquema permite realizar operaciones a nombre de un comercio, sin que este tenga que compartir sus credenciales de acceso a Openpay. Bajo este esquema, el comercio determina cuando restringe o permite a un partner realizar acciones a nombre del comercio dentro de Openpay. Para que&hellip;&nbsp;Read More &raquo;Partners","og_url":"https:\/\/documents-mx-dev.opdevhm.com\/en\/docs\/partner.html\/","og_site_name":"Openpay","article_published_time":"2021-03-09T22:19:52+00:00","article_modified_time":"2022-02-18T15:48:55+00:00","og_image":[{"url":"https:\/\/documents.openpay.mx\/images\/external_arrow.png"}],"author":"user","twitter_card":"summary_large_image","twitter_misc":{"Written by":"user","Est. reading time":"15 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/documents-mx-dev.opdevhm.com\/docs\/partner.html#article","isPartOf":{"@id":"https:\/\/documents-mx-dev.opdevhm.com\/docs\/partner.html"},"author":{"name":"user","@id":"https:\/\/documents-mx-dev.opdevhm.com\/#\/schema\/person\/4c704d548de0c4eed7ac90530bf655a7"},"headline":"Partners","datePublished":"2021-03-09T22:19:52+00:00","dateModified":"2022-02-18T15:48:55+00:00","mainEntityOfPage":{"@id":"https:\/\/documents-mx-dev.opdevhm.com\/docs\/partner.html"},"wordCount":2624,"publisher":{"@id":"https:\/\/documents-mx-dev.opdevhm.com\/#organization"},"image":{"@id":"https:\/\/documents-mx-dev.opdevhm.com\/docs\/partner.html#primaryimage"},"thumbnailUrl":"https:\/\/documents.openpay.mx\/images\/external_arrow.png","articleSection":["Documentaci\u00f3n"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/documents-mx-dev.opdevhm.com\/docs\/partner.html","url":"https:\/\/documents-mx-dev.opdevhm.com\/docs\/partner.html","name":"Partners | Openpay","isPartOf":{"@id":"https:\/\/documents-mx-dev.opdevhm.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/documents-mx-dev.opdevhm.com\/docs\/partner.html#primaryimage"},"image":{"@id":"https:\/\/documents-mx-dev.opdevhm.com\/docs\/partner.html#primaryimage"},"thumbnailUrl":"https:\/\/documents.openpay.mx\/images\/external_arrow.png","datePublished":"2021-03-09T22:19:52+00:00","dateModified":"2022-02-18T15:48:55+00:00","breadcrumb":{"@id":"https:\/\/documents-mx-dev.opdevhm.com\/docs\/partner.html#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/documents-mx-dev.opdevhm.com\/docs\/partner.html"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/documents-mx-dev.opdevhm.com\/docs\/partner.html#primaryimage","url":"https:\/\/documents.openpay.mx\/images\/external_arrow.png","contentUrl":"https:\/\/documents.openpay.mx\/images\/external_arrow.png"},{"@type":"BreadcrumbList","@id":"https:\/\/documents-mx-dev.opdevhm.com\/docs\/partner.html#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Inicio","item":"https:\/\/documents-mx-dev.opdevhm.com\/"},{"@type":"ListItem","position":2,"name":"Partners"}]},{"@type":"WebSite","@id":"https:\/\/documents-mx-dev.opdevhm.com\/#website","url":"https:\/\/documents-mx-dev.opdevhm.com\/","name":"Openpay","description":"Openpay a BBVA Company","publisher":{"@id":"https:\/\/documents-mx-dev.opdevhm.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/documents-mx-dev.opdevhm.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/documents-mx-dev.opdevhm.com\/#organization","name":"Openpay Soporte","url":"https:\/\/documents-mx-dev.opdevhm.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/documents-mx-dev.opdevhm.com\/#\/schema\/logo\/image\/","url":"https:\/\/documents-mx-dev.opdevhm.com\/wp-content\/uploads\/2020\/05\/logo.png","contentUrl":"https:\/\/documents-mx-dev.opdevhm.com\/wp-content\/uploads\/2020\/05\/logo.png","width":290,"height":90,"caption":"Openpay Soporte"},"image":{"@id":"https:\/\/documents-mx-dev.opdevhm.com\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/documents-mx-dev.opdevhm.com\/#\/schema\/person\/4c704d548de0c4eed7ac90530bf655a7","name":"user","url":"https:\/\/documents-mx-dev.opdevhm.com\/en\/docs\/author\/berni"}]}},"_links":{"self":[{"href":"https:\/\/documents-mx-dev.opdevhm.com\/en\/wp-json\/wp\/v2\/posts\/3468","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/documents-mx-dev.opdevhm.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/documents-mx-dev.opdevhm.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/documents-mx-dev.opdevhm.com\/en\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/documents-mx-dev.opdevhm.com\/en\/wp-json\/wp\/v2\/comments?post=3468"}],"version-history":[{"count":0,"href":"https:\/\/documents-mx-dev.opdevhm.com\/en\/wp-json\/wp\/v2\/posts\/3468\/revisions"}],"wp:attachment":[{"href":"https:\/\/documents-mx-dev.opdevhm.com\/en\/wp-json\/wp\/v2\/media?parent=3468"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/documents-mx-dev.opdevhm.com\/en\/wp-json\/wp\/v2\/categories?post=3468"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/documents-mx-dev.opdevhm.com\/en\/wp-json\/wp\/v2\/tags?post=3468"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}