Comunidade
Envio de Produto Digital
Boa tarde, eu gostaria de saber se tem como configurar para que o cliente receba autoamaticamente um produto digital após o cliente realizar uma compra via link de pagamento do PagBank .
Posted by Pedro Henrique Mendes de Lima about 1 hour ago
Header x-authenticity-token do webhook não está sendo enviado (Sandbox)
Boa tarde,
<br>
No processo de validação da assinatura do webhook com o token+payload em sha256, não consigo testar a comparação pois o header x-authenticity-token não está sendo enviado pela API.
<br>
Não tenho certeza se isso é apenas no Sandbox, gostaria que me confirmassem isso, ou se é algo que preciso resolver na integração.
<br>
Agradeço pelo apoio!
Posted by William Carneiro about 5 hours ago
Problema na execução do Gateway de pagamento do PagSeguro
Bom dia,
Instalei um plugin do PagSeguro em meu site da WordPress que comprei no site elevahost. Pra configurar o plugin gerei o token do PagSeguro e também informei a página de retorno, mas quando clico em algum item do meu site para realizar a compra e testar o Gateway de Pagamento, da um erro no redirecionamento, não aparece o Checkout do PagSeguro e sim um erro do PagSeguro dizendo:
"Pagbank
Não conseguimos prosseguir com a compra, entre em contato com o vendedor."
OBS: Não fui eu quem desenvolvi o plugin, comprei de um site e o suporte deles falaram para eu abrir um ticket no PagSeguro, que o problema é aqui. Alguma orientação? Obrigado.
Posted by Tiago dos Santos Rodrigues about 10 hours ago
Código ARN das transações
Todas as transações da minha empresa são via cartão, por que não recebo o código ARN delas?
Posted by Luiz Correa 2 days ago
Erro ao Consultar Cobrança
O mesmo código que sempre funcionou, hoje está apresentando erro.
Quando tento consultar uma cobrança criada
"api. pagseguro. com/charges?reference_id=a1d1e372-db0c-4346-98cd-7710fedb3b8b"
Recebo
{
"error_messages": [
{
"code": "resource_not_found",
"message": "Resource not found."
}
]
}
A documentação esta totalmente desatualizada:
Lá diz que vamos receber o parametro "na resposta da criação do pedido como charge.id".
Mas na verdade ele vem como reference_id e o endpoint mencionado na documentação tambem não funciona.
<br>
Usando a minha requisição conforme mostrei acima, sempre funcionou, recebia o status de não pago. agora só recebo esse erro, quando o pagamento é efetuado pelo cliente, ai a resposta vem correta.
Ou seja, não consigo mais verificar o status de um qrcode recém-criado.
Mas alguem passou por isso?
Posted by Erson Motta 3 days ago
Retirada de juros em parcelamento
Olá gostaria de saber como retiro os juros nos parcelamentos quando crio o checkout
Posted by Ivo 9 days ago
Webhooks possuem sistema de reenvio?
Gostaria de saber se os webhooks do pagbank possuem um sistema de reenvio caso meu sistema fique fora do ar por algum tempo.
<br>
Posted by Vitor Souza 9 days ago
Qual API utilizar para uma aplicação androis de pdv para maquininhas smart?
Fui contrado para integrar uma API de pagamento da pagbank em uma aplicação android pdv feita com o objetivo de ser postada na loja de apps das maquininhas smart, a aplicação deve realizar o pagamento sem redirecionamentos, dentro do próprio app. Estou confuso com qual das APIs disponíveis utilizar!
Posted by Davi de Oliveira Custódio 13 days ago
API de Checkout é inconsistente em ralação a número de telefone
Ao utilizar o endpoint de criação de checkouts (/checkouts - [documentação](https://dev.pagbank.uol.com.br/reference/criar-checkout) ) um número de telefone não móvel só é aceito se `customer_modifiable` estiver definido como `true`.
Tenho vários clientes CNPJ que utilizam número fixo, e solicito as informações do cliente no meu site pra agilizar o pagamento e pular uma etapa no PagSeguro. Mas ao mandar dados com telefone fixo meu request é rejeitado com a mensagem:
```json
{
"error": "invalid_format",
"description": "Field has an invalid format. Please check the documentation.",
"parameter_name": "customer.phone.number"
}
```
Payload de `customer.phone` enviado:
```
{
"country": "+55",
"area": "47",
"number": "33332222"
}
```
> Important: `customer_modifiable` precisa estar definido como `false` no payload, caso contrário o valor é aceito.
Posted by Matias G Henschel 19 days ago
React Native E PlugPagService
Recentemente começei o desenvolvimento de um app que precisa ter integração com o SmartPOS, como meu conhecimento em RN é maior que Kotlin/Android decidi fazer com ele mesmo, porém após fazer todo o setup dentro do RN e rodar o app eu recebo esse erro:
```Text Error
Could not determine the dependencies of task ':app:compileDebugJavaWithJavac'.
Could not resolve all task dependencies for configuration ':app:debugCompileClasspath'.
Could not find br.com.uol.pagseguro.plugpagservice.wrapper:wrapper:1.27.2.
Required by:
project :app
* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.
> Get more help at https://help.gradle.org.
```
Já tentei todas as soluções possiveis e mesmo assim, continuo sem sucesso! alguém já passou por algo parecido?
Vou deixar meus arquivos de configuração abaixo para caso alguém saiba como resolver...
<br>
```Text android/build.gradle
buildscript {
ext {
buildToolsVersion = "34.0.0"
minSdkVersion = 21
compileSdkVersion = 34
targetSdkVersion = 34
ndkVersion = "25.1.8937393"
kotlinVersion = "1.8.0"
}
repositories {
google()
mavenCentral()
maven { url 'https://github.com/pagseguro/PlugPagServiceWrapper/raw/master' } // Correção aqui
}
dependencies {
classpath("com.android.tools.build:gradle")
classpath("com.facebook.react:react-native-gradle-plugin")
classpath("org.jetbrains.kotlin:kotlin-gradle-plugin")
classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlinVersion")
}
}
apply plugin: "com.facebook.react.rootproject"\
> **android/build.gradle**
```
```Text android/app/src/build.gradle
apply plugin: "com.android.application"
apply plugin: "org.jetbrains.kotlin.android"
apply plugin: "com.facebook.react"
/**
* This is the configuration block to customize your React Native Android app.
* By default you don't need to apply any configuration, just uncomment the lines you need.
*/
react {
/* Folders */
// The root of your project, i.e. where "package.json" lives. Default is '..'
// root = file("../")
// The folder where the react-native NPM package is. Default is ../node_modules/react-native
// reactNativeDir = file("../node_modules/react-native")
// The folder where the react-native Codegen package is. Default is ../node_modules/@react-native/codegen
// codegenDir = file("../node_modules/@react-native/codegen")
// The cli.js file which is the React Native CLI entrypoint. Default is ../node_modules/react-native/cli.js
// cliFile = file("../node_modules/react-native/cli.js")
/* Variants */
// The list of variants to that are debuggable. For those we're going to
// skip the bundling of the JS bundle and the assets. By default is just 'debug'.
// If you add flavors like lite, prod, etc. you'll have to list your debuggableVariants.
// debuggableVariants = ["liteDebug", "prodDebug"]
/* Bundling */
// A list containing the node command and its flags. Default is just 'node'.
// nodeExecutableAndArgs = ["node"]
//
// The command to run when bundling. By default is 'bundle'
// bundleCommand = "ram-bundle"
//
// The path to the CLI configuration file. Default is empty.
// bundleConfig = file(../rn-cli.config.js)
//
// The name of the generated asset file containing your JS bundle
// bundleAssetName = "MyApplication.android.bundle"
//
// The entry file for bundle generation. Default is 'index.android.js' or 'index.js'
// entryFile = file("../js/MyApplication.android.js")
//
// A list of extra flags to pass to the 'bundle' commands.
// See https://github.com/react-native-community/cli/blob/main/docs/commands.md#bundle
// extraPackagerArgs = []
/* Hermes Commands */
// The hermes compiler command to run. By default it is 'hermesc'
// hermesCommand = "$rootDir/my-custom-hermesc/bin/hermesc"
//
// The list of flags to pass to the Hermes compiler. By default is "-O", "-output-source-map"
// hermesFlags = ["-O", "-output-source-map"]
}
/**
* Set this to true to Run Proguard on Release builds to minify the Java bytecode.
*/
def enableProguardInReleaseBuilds = false
/**
* The preferred build flavor of JavaScriptCore (JSC)
*
* For example, to use the international variant, you can use:
* `def jscFlavor = 'org.webkit:android-jsc-intl:+'`
*
* The international variant includes ICU i18n library and necessary data
* allowing to use e.g. `Date.toLocaleString` and `String.localeCompare` that
* give correct results when using with locales other than en-US. Note that
* this variant is about 6MiB larger per architecture than default.
*/
def jscFlavor = 'org.webkit:android-jsc:+'
android {
ndkVersion rootProject.ext.ndkVersion
buildToolsVersion rootProject.ext.buildToolsVersion
compileSdk rootProject.ext.compileSdkVersion
namespace "com.apptest"
defaultConfig {
applicationId "com.apptest"
minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion
versionCode 1
versionName "1.0"
}
signingConfigs {
debug {
storeFile file('debug.keystore')
storePassword 'android'
keyAlias 'androiddebugkey'
keyPassword 'android'
}
}
buildTypes {
debug {
signingConfig signingConfigs.debug
}
release {
// Caution! In production, you need to generate your own keystore file.
// see https://reactnative.dev/docs/signed-apk-android.
signingConfig signingConfigs.debug
minifyEnabled enableProguardInReleaseBuilds
proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
}
}
}
dependencies {
// The version of react-native is set by the React Native Gradle Plugin
implementation("com.facebook.react:react-android")
implementation("com.facebook.react:flipper-integration")
implementation("com.android.support:design:28.0.0")
implementation("br.com.uol.pagseguro.plugpagservice.wrapper:wrapper:1.27.2")
if (hermesEnabled.toBoolean()) {
implementation("com.facebook.react:hermes-android")
} else {
implementation jscFlavor
}
}
apply from: file("../../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesAppBuildGradle(project)
```
```Text android/app/src/main/AndroidManifest.xml
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="br.com.uol.pagseguro.permission.MANAGE_PAYMENTS" />
<application
android:name=".MainApplication"
android:label="@string/app_name"
android:icon="@mipmap/ic_launcher"
android:roundIcon="@mipmap/ic_launcher_round"
android:allowBackup="false"
android:theme="@style/AppTheme">
<activity
android:name=".MainActivity"
android:label="@string/app_name"
android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|screenSize|smallestScreenSize|uiMode"
android:launchMode="singleTask"
android:windowSoftInputMode="adjustResize"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<action android:name="br.com.uol.pagseguro.PAYMENT" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
</application>
</manifest>
```
React: 18.2.0
React Native: 0.73.6
Posted by Rafael Nicolas Barbosa Moreira 20 days ago